edubun
日本語

プログラミングとは

プログラムは命令の並びです。JavaScript はそれを、いちばん上の行から下へ、一つの文ずつ実行します。

コンピューターが従える命令

料理のレシピには「卵を二つ割って、かき混ぜて、フライパンに流しこむ」と書いてあります。読む人は、どのボウルを使うか、どれくらい強く混ぜるか、殻のかけらが入ったらどうするかなど、多くのことを自分でおぎないます。コンピューターは何もおぎないません。命令に書いてあるとおりのことを、書いてあるとおりの順番で実行し、意味のわからない命令に出会ったとたん、エラーで止まります。プログラミングとは、機械が従えるほど正確な命令を書く仕事です。

その命令はプログラミング言語で書きます。プログラミング言語は語彙が少なく、文法がきびしいので、どの行も一つのことだけを意味します。このコースでは JavaScript を使います。JavaScript はすべての Web ブラウザーに組みこまれている言語なので、実行するのに必要なものはもうそろっています。このページの練習ボックスは、今読んでいるブラウザーの中であなたのコードを実行します。JavaScript は Node.js などのツールを使ってブラウザーの外でも動き、ここで学ぶ基本はそこでも同じようにはたらきます。

はじめてのコード

ほとんどのプログラミングのコースは、コンピューターにメッセージを表示させることから始まります。JavaScript では次のようになります。

console.log("Hello, world!");

一つずつ読んでみましょう。console は、プログラムが実行している人に向けてメッセージを書く場所です。.log は「そこに一行書く」という意味です。かっこの中には書く内容が入り、ダブルクォーテーションは Hello, world! がコードの続きではなく文字列であることを示します。最後のセミコロンは、文の終わりの句点のように、命令を閉じます。このようなひとまとまりの命令を文といいます。実行すると、コンソールには Hello, world! と一行だけ表示されます。クォーテーションは表示されません。クォーテーションは、文字列がどこで始まりどこで終わるかを JavaScript に伝えるだけです。

上から下へ、一つの文ずつ

文がいくつかあるプログラムは、それを順番に実行します。一つめの文が終わるまで、二つめは始まりません。下のプログラムは三行を表示し、行はコードと同じ順番で出てきます。

console.log("Wake up");
console.log("Brush teeth");
console.log("Eat breakfast");
// 表示:
// Wake up
// Brush teeth
// Eat breakfast

最初の二行を入れかえると、出力も入れかわります。当たり前に聞こえますが、初心者のバグのかなりの部分は、文の順番の間違いから生まれます。値を計算する前に使ってしまったり、最後の品物を足す前に合計を表示してしまったりするのです。

コメントは人のためのメモ

上の例で、// で始まる行はコメントです。JavaScript は // からその行の終わりまでをすべて飛ばすので、自分やほかの読者に向けたメモを書けます。何行にもわたるメモは、/* で始めて */ で終えます。コメントは、行を消さずに止めておくのにも便利です。行の前に // をつければ、その行はもう実行されません。

うまくいかないとき

JavaScript は大文字と小文字を区別します。console.log は動きますが、Console.log や console.Log は動きません。consol.log のように名前のつづりを間違えると、ReferenceError: consol is not defined のようなメッセージが出てプログラムが止まります。閉じるクォーテーションやかっこが抜けていると SyntaxError になります。これはコードがそもそも正しい JavaScript ではないという意味なので、何も実行されません。エラーメッセージは最初はこわく見えますが、コンピューターがどこでつまずいたかを教えてくれているのです。メッセージの一行めを読み、そこに出てくる名前を見つけて、自分のコードと一文字ずつ見比べましょう。

練習ボックスの使い方

どの練習ボックスも、左にコード、右に出力があります(スマートフォンでは出力はコードの下)。「再生」でコードを実行します。キーボードの Ctrl+Enter か Cmd+Enter でも同じです。「答え合わせ」はコードを実行し、表示された各行を正解と比べます。つづり、大文字、行の中の空白もすべて数えます。「最初から」で元のコードにもどります。コードは閉じた枠の中で動くので、いろいろ試しても何もこわれません。

背景JavaScript は Netscape 社のブレンダン・アイクが考え出し、Netscape Navigator 2 ブラウザーではじめて登場しました。共通の標準を作る作業は1996年十一月に始まり、Ecma International は1997年六月に、ECMAScript と呼ばれる ECMA-262 という番号の標準の第1版を採択しました。この言語は今も年に一度更新されています。第17版の ECMAScript 2026 は2026年六月に公開されました。ブラウザーを作る会社は、この文書に従って JavaScript エンジンを作っています。
プログラムコンピューターが順番に実行する命令の並び
プログラミング言語JavaScript のような、プログラムを書くためのきびしい決まりをもつ言語
文ひとまとまりの命令。セミコロンで終わることが多い
console.logコンソールに出力を一行表示する
コメントJavaScript が無視する、// のあと(または /* と */ のあいだ)の文字
構文プログラミング言語の文法の決まり
SyntaxErrorコードが文法の決まりを破っていて、何も実行されない
大文字と小文字の区別log と Log は別の名前
  1. 何が表示されますか?
    console.log("Hi");
    console.log("there");
    • 一行に Hi there
    • Hi、次の行に there
    • there、次に Hi
  2. 何が表示されますか?
    console.log("Snack");
    // console.log("Nap");
    console.log("Walk");
    • Snack と Walk
    • Snack、Nap、Walk
    • Snack だけ
  3. Hello という単語を表示するのはどの行ですか?
    • Console.log("Hello");
    • console.log("Hello");
    • console.log(Hello");
  4. console.log("Yes") の出力に、ダブルクォーテーションは出てきますか?
    • はい
    • いいえ、Yes だけが表示される
  5. 行の終わりまで続くコメントを始める記号はどれですか?
    • //
    • ##
    • <!--
  6. consol.log("Hi") を実行しました。どうなりますか?
    • Hi と表示される
    • ReferenceError: consol is not defined で止まる
    • consol と表示される
  7. 何行表示されますか?
    console.log("A");
    console.log("B");
    /* console.log("C");
    console.log("D"); */
    console.log("E");
  8. JavaScript で、ひとまとまりの命令を何といいますか?
    • 文
    • コメント
    • コンソール
  9. ある行で閉じるクォーテーションが抜けています。console.log("Hi);。これは何というエラーですか?
    • SyntaxError
    • ReferenceError
    • エラーにならず、Hi と表示される
  10. JavaScript が従う ECMAScript の標準を発行している団体はどれですか?
    • Ecma International
    • W3C
    • ISO only
ポイント
  • プログラムは、上から下へ実行される命令の並び。
  • console.log("text") で一行表示する。
  • 文字列はクォーテーションの中に書く。クォーテーションは表示されない。
  • // でコメントが始まり、JavaScript はそこを飛ばす。
  • JavaScript は大文字と小文字を区別する。
このコースの出典 (2)
  • MDN Web Docs, JavaScript Guide (developer.mozilla.org/en-US/docs/Web/JavaScript/Guide, chapters Introduction, Grammar and types, Control flow, Loops and iteration, Functions, Expressions and operators, Numbers and strings, Indexed collections, Working with objects; checked 2026-10-17)
  • Ecma International, ECMA-262 ECMAScript 2026 Language Specification, 17th edition, June 2026 (tc39.es/ecma262 and ecma-international.org/publications-and-standards/standards/ecma-262, checked 2026-10-17)

確認日: 2026-10-17