icon
icon

デバッグを行う!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を停止する方法も併せて覚えておこう。

 

[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人ずつつき、マンツーマンのメンタリングで学習をサポートし、習得することが可能です。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する