1. 見出しと説明の 2 行を作る
  2. 英語のメモでも同じ形になる
  3. 境界値。説明だけが空文字
  4. 境界値。両方が空文字でも記号は残る
コース一覧
JavaScript入門:コードを動かす
コメントで意図を残す

JavaScript入門:コードを動かす

HTML に JavaScript を読み込むところから始め、コンソール、文字列と数値、let と const、データ型、型変換、比較・論理・三項・null 合体演算子を学ぶ全 23 レッスン(335 分)の入門コースです。最後は、変数と式を使ってプロフィールの見出し用の値を組み立てます。if 文、配列とループ、DOM 操作は後続コースで扱います。

1
はじめての JavaScript
01. HTML に JavaScript を読み込む5分
02. console.log で表示する15分
03. 文字列を連結する15分
04. 四則演算15分
05. コメントで意図を残す15分
06. エラーを読んでみる15分
07. つくる 起動メッセージ20分
08. 第1章まとめクイズ10分
2
変数とデータ型
01. let と const を使い分ける15分
02. typeof で型を調べる15分
03. 型を変換する15分
04. 真偽値と falsy な値15分
05. null と undefined を見分ける15分
06. テンプレートリテラル15分
07. つくる プロフィールを変数にする20分
08. 第2章まとめクイズ10分
3
演算子と式
01. 比較演算子と ===15分
02. 論理演算子と短絡評価15分
03. 三項演算子で簡潔に15分
04. ?? で既定値を用意する15分
05. 演算子の優先順位15分
06. つくる 表示名を決める20分
07. 第3章まとめクイズ10分

コメントで意図を残す

解説

このレッスンで分かること

  • // は行末まで、/* */ は囲んだ範囲が、実行されないメモになります
  • コメントには「何をしているか」ではなく「なぜそうしたか」を書きます

3 ヶ月後の自分は他人

自分で書いたコードでも、3 ヶ月経つと「なぜこう書いたのか」は思い出せません。そこで、JavaScript が読み飛ばす場所をコードの中に作れるようになっています。それがコメントです。プログラムの動きには一切影響しません。人間だけが読むメモです。

JavaScript

// 閲覧数は運営から日次でしか届かないため、当日分は 0 のまま出す console.log(3 * 120);

1 行目は // で始まっているので、JavaScript から見れば存在しないのと同じです。それでも、このファイルを初めて開いた人は、1 行目を読むだけで事情が分かります。

メモが 1 行で終わらないとき

コメントには 2 種類の書き方があります。

JavaScript

// これは行コメント。この行の終わりまでがコメント /* これはブロックコメント。 複数行をまとめてコメントにできる。 */
記法範囲主な使いどころ
//書いた位置から行末まで1 行のメモ、コードの右側への補足
/* *//* から */ まで数行の説明、書きかけのコードの一時停止

行コメントは、コードの右側に書くこともできます。

JavaScript

console.log(3 * 120); // 作品 3 件、それぞれ 120 回の閲覧

長い説明を右側に書くと横に伸びて読みにくくなるので、2 行以上になりそうなら、説明したいコードの真上へ移します。インデント (行頭の空白) は説明する対象とそろえます。ずれていると、どこにかかる説明なのかが読み取れません。

解説

VS Code では、行を選んで Ctrl + / (Mac は Command + /) を押すと、選んだ範囲がまとめてコメントになります。もう一度押すと戻ります。

コードを読めば分かることは書かない

コメントは書くほど良いというものではありません。中身のないコメントはノイズになります。

JavaScript

// 3 と 120 をかける console.log(3 * 120);

これはコードを読めば分かることを繰り返しているだけです。しかも、あとで値を変えたときにコメントだけ古いまま残り、読む人を混乱させます。嘘をつくコメントは、無いより有害です。

役に立つのは、コードからは読み取れない情報です。なぜその方法を選んだか、一見おかしく見える処理の背景、これから直す予定、注意してほしい落とし穴。この 4 つを思い出してください。

TODO と FIXME は世界共通のしるしです。TODO はあとでやること、FIXME は壊れていて直すべきところを表します。多くのエディタがこの 2 語を色付きで目立たせ、一覧にもしてくれます。

よくある間違い

  • 文字列の中の // をコメントだと思う — 文字列の内側はコメントになりません。"https://example.com/profile" の // も、ただの 2 文字として残ります
  • ブロックコメントを入れ子にする — /* */ は入れ子にできません。内側の */ で閉じてしまい、残りが構文エラーになります。まとめて外したいときは行コメントを重ねます

要件

  1. 関数名は buildCommentNote、引数は title と note の 2 つ (どちらも文字列)
  2. 戻り値は // + title + 改行 + /* + note + */ をつないだ文字列
  3. // と /* のあと、*/ の前にはそれぞれ半角スペースを 1 つ入れること
  4. 改行は \n を使うこと

入出力例

buildCommentNote("profile", "自己紹介を組み立てる") → "// profile /* 自己紹介を組み立てる */" buildCommentNote("setup", "TODO 第 8 章で置き換える") → "// setup /* TODO 第 8 章で置き換える */" buildCommentNote("setup", "") → "// setup /* */" buildCommentNote("", "") → "// /* */"

ヒント

記号の部分は固定の文字列、中身は引数です。`+` でつなぎます

`"// " + title + "\n" + "/* " + note + " */"` の形になります

空文字を渡したとき、`/*` と `*/` の間に半角スペースが 2 つ残るのが正解です

生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2026/05/19·更新 2026/08/26

関連レッスン

  • エラーを読んでみる

    コンソールに出る赤いメッセージの読み方を覚えます。エラーの種類と行番号から、直す場所を自分で見つけられるようになります。

  • つくる 起動メッセージ

    第 1 章の総仕上げです。プロフィールサイトを開いたときにコンソールへ出す自己紹介メッセージを、1 つの関数で組み立てます。

  • 第1章まとめクイズ

    第1章で学んだ script タグの読み込み、console.log と return の違い、文字列の連結と四則演算、コメント、エラーの読み方を 5 問で確かめます。

  • let と const を使い分ける

    再代入するかどうかで let と const を選び分けます。プロフィールの名前と作品数を変数として宣言できるようになります。

このレッスンに出てくる用語

意味があいまいなまま進んだ語は、ここから読み直せます。

  • コメント# で1行コメント。
  • インデントPythonはインデント(通常スペース4つ)でコードブロックを定義する。
  • 処理計算や代入を表す長方形
  • ロック「他の人触らないでね」と DB に予約する
  • 関数処理に名前を付けて再利用できる単位
  • 引数位置引数=順番で渡す。
  • 戻り値呼び出し元への返答を表す点線矢印
main.js
学習モード
エディタを読み込んでいます

メモ

コメントで意図を残す

⌘S で保存