Node Debugについて

結論から先に書きますが、Node.jsを実行するときはNode Debugを過信せずにCUI(コマンドプロンプト/ターミナル)から実行して確認した方が良いです。

VSCodeでNode.jsをデバッグ実行(F5)するときには、標準でインストールされているNode Debugというプラグインを通して実行されますが、このプラグインの動作がすごく不安定です。バージョンが上がるたびに不具合を起こしているようなので、あまり過信しない方が身のためです。

遭遇した不具合 その1

配列オブジェクトが出力できない。

  • 環境(2021年4月16日時点で最新版)

    • Node.js 10.17.0
    • VSCode 1.55.2
    • Node Debug 1.42.5
  • コード

var array1 = [1,2,3];
console.log(array1);

var array2 = [4,5,6];
console.log(array2);
  • 結果
Canceled

結果がおかしいです。少しNode Debugのバージョンを下げたところ、解決しました。

遭遇した不具合 その2

デバッガーでステップ実行できない。

  • 環境(少し古い環境です)
    • Node.js 10.17.0
    • VSCode 1.24.0
    • Node Debug 1.24.2

デバッガーでステップ実行が動きませんでした。最新版(Node Debug 1.42.5)では動作しました。

遭遇した不具合 その3

共有フォルダ(ネットワークフォルダ)を介すとMongoClientが実行できない。

  • 環境(少し古い環境です)
    • Node.js 10.17.0
    • VSCode 1.24.0
    • Node Debug 1.24.2

共有フォルダ(ネットワークフォルダ)にプログラムとMongoClientを置いた状態で、ローカルのMongoServerに繋ごうとしたところ、エラーになりました。最新版(Node Debug 1.42.5)では動作しました。

最後に

バージョンによって、動いたり、動かなかったりと動作が不安定という印象です。お仕事でNode.jsを扱うときにはCUI(コマンドプロンプト/ターミナル)から実行したほうが良さそうです。