デバッグを行う!Node.jsでdebugの使い方【初心者向け】

初心者向けにNode.jsのdebugの使い方について解説しています。デバッグ作業は、プログラムを書く中でエラー箇所を発見する上で欠かせないものです。エラーが出てもすぐ修正できるようdebugの書き方を理解しておきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

Node.jsでdebugする方法を解説します。

デバッグの作業はプログラムを書く上で必要不可欠なので、どういう書き方をするのかしっかりと覚えておきましょう。

 

なお本記事は、TechAcademyのNode.jsオンライン講座の内容をもとに作成しています。

 

田島悠介

今回はdebugコマンドを使ってみよう。

大石ゆかり

田島メンター!debugはどういったコマンドなんですか〜?

田島悠介

指定したプログラムに間違いがないかどうか確認する際に使用するんだ。さっそくやってみよう。

大石ゆかり

了解です!

 

Node.jsのdebug(デバッグ)とは

デバッグとは、プログラミングを行う上でエラー箇所がないか探す作業です。

Node.jsには標準でデバッグ作業ができるdebugというコマンドが用意されています。

 

Node.jsでdebugする方法

debugを使う方法

コマンド

node debug 対象ファイル
debug> c

解説

実行後1行目までデバッグされます。

その後、debug> という表示が現れてデバッグコマンドを入力できる状態になります。

デバッグモードでcを入力するとブレークポイントまでデバッグされます。

ブレークポイントとは、デバッグを行う上でこのポイントまでデバッグをするという印です。

ブレークポイントをいくつも設置することで、どの部分に不具合が存在するか確かめながら実装することが可能です。ブレークポイントを設置するためには、ソースコードの中に「debugger」と記載することで実装できます。

 

田島悠介

debugの基本の書き方だよ。

大石ゆかり

ソースコードの方でブレークポイントを設定することで、チェックする際の区切りをつけることができるんですね。

田島悠介

そうだね。debugを停止する方法も併せて覚えておこう。

 

[PR] Node.jsで挫折しない学習方法を動画で公開中

Node.jsのdebugを停止する方法

.exitで停止

コマンド

debug>  .exit

解説

debug>の画面で.exitを実行する事でデバッグすることが出来ます。

 

Ctrl+Cで停止

コマンド

debug> 
(To exit, press ^C again or type .exit)
debug>

解説

debug>の画面でCtrl+Cを2度実行する事でデバッグすることが出来ます。

コマンド上ではCtrl+Cを実行したように表示されていませんが、Ctrl+Cは入力しても、入力自体に表示されません。

 

実際にnode debugを使ってみよう

実際にデバッグを行うプログラムを書いてみましょう。

ソースコード

let num = 1
debugger
console.log('30歳から未経験プログラマー転職', num)
debugger
num = 2
debugger
console.log('現役エンジニアが効率的にサポート', num)

 

コマンドプロンプト実行結果

デバッグコマンド表示結果解説

debug.js(ソースコード)の2行目4行目6行目にブレークポイントであるdebuggerを設置しています。

コマンドプロンプトの最初にnode debug debug.jsでデバッグを開始しています。

その後、コマンドプロンプトのdebug>の部分でcを入力するとdebug.jsの最初のdebuggerがあるブレークポイントまで処理が実行されます。

つまり、debug.jsのlet num = 1の部分で変数numに1を代入する処理が実行されることになります。

その後、コマンドプロンプトのdebug> に再度cと入力することでと次のブレークポイントまで処理を続けます。

debug.jsの3行目のconsole.log(’30歳から未経験プログラマー転職’, num)が実行されて、1行目で代入された1を含む、30歳から未経験プログラマー転職 1と表示されています。

 

その後、コマンドプロンプトのdebug> に3回目のcと入力することでと次のブレークポイントまで処理を続けます。

つまり、debug.jsのnum = 2の部分で変数numに2を代入する処理が実行されます。

そして、コマンドプロンプトのdebug> に4回目のcと入力することでと次のブレークポイントまで処理を続けます。

debug.jsの最終行のconsole.log(‘現役エンジニアが効率的にサポート’, num)が実行されて、先程代入された2を含む、現役エンジニアが効率的にサポートが表示されます。

 

Node.jsでdebugする方法を解説しました。

デバッグは、プログラムを書く上で必ず使うので書き方も含めしっかり理解しておきましょう。

Node.jsの学習サイトもまとめているので、合わせて参考にしてみてください。

 

田島悠介

実際にブレークポイントを指定した場合の実行結果の例を見てみたよ。

大石ゆかり

ブレークポイントから続行するときは、その都度cを入力し直せばいいんですね。

田島悠介

debugと同じ処理をinspectというコマンドで行うこともできるよ。最近ではこちらが推奨されることもあるので覚えておこう。

大石ゆかり

分かりました。ありがとうございます!

 

また、オンラインのプログラミングスクールTechAcademyでは、Node.jsオンライン講座を開催しています。

Node.jsを使ってWebアプリケーションを開発することができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。