デバッグを行う!Node.jsでdebugの使い方【初心者向け】
初心者向けにNode.jsのdebugの使い方について解説しています。デバッグ作業は、プログラムを書く中でエラー箇所を発見する上で欠かせないものです。エラーが出てもすぐ修正できるようdebugの書き方を理解しておきましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,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を停止する方法も併せて覚えておこう。
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人ずつつき、マンツーマンのメンタリングで学習をサポートし、習得することが可能です。