JavaScript入門 | 概要 | JavaScriptの構文

プログラム(program)とは?

プログラムは、コンピューターが実行できる命令(instruction)で構成される。コンピュータープログラミングで、コンピューターが実行できる命令を文(statement)という。つまりプログラムとは、特定の結果を得るためにコンピューターによって実行される文の集合だといえる。

JavaScriptの構文

JavaScriptの文はセミコロン(;)で区切られる。

var x = 10;
var result = x + 3

JavaScriptは大文字と小文字を区別する。JavaScriptで変数や関数の名前、予約語などを作成または使用するときは、大文字と小文字を正確に区別して使用しなければならない。

var javascript = 10; // 変数javascriptとJavaScriptは互いに異なる2つの変数として認識される。
var JavaScript = 20;
Var Script = 30; // 変数の宣言はvarキーワードでのみ可能であり、Varは動作しない。

リテラル(literal)

リテラルは、直接表現される値そのものを意味する。

次の例に登場する値はすべてリテラルである。

12            // 数値リテラル
"JavaScript"  // 文字列リテラル
'こんにちは'  // 文字列リテラル
true          // 真偽値リテラル

識別子(identifier)

識別子は、変数や関数の名前を作成するときに使用する名前を意味する。JavaScriptで識別子は、英字(大文字と小文字)、数字、アンダースコア(_)、またはドル記号($)だけを使用できる。

JavaScriptで識別子は、数字と識別子をすばやく区別できるように数字で始めることはできない。JavaScriptはUnicode文字セットを使用する。

識別子の書き方

JavaScriptでは、識別子を作成するときに次の書き方を使用できる。

  1. Camel Case方式
  2. Underscore Case方式

Camel Case方式とは、識別子が複数の単語で構成される場合、最初の単語はすべて小文字で書き、次の単語からは最初の文字だけを大文字で書く方式である。Underscore Case方式は、識別子を構成する単語を小文字だけで書き、それらの単語をアンダースコア(_)でつなぐ方式である。

JavaScriptでは、識別子を作成するとき慣例的にCamel Case方式を多く使用する。したがって、この授業でもコードの可読性と統一性のため、Camel Case方式だけを使用する。

var firstVar = 10;           // Camel Case方式
function my_first_func {     // Underscore Case方式
    var firstLocalVar = 20;  // Camel Case方式
}

JavaScriptでハイフン(-)は減算のために予約されたキーワードなので、識別子を作成するときは使用できない。

キーワード(keyword)

JavaScriptでは、いくつかの単語を特別な用途で使用するためにあらかじめ予約している。このようにあらかじめ予約された単語をキーワード(keyword)または予約語(reserved word)という。これらのキーワードは、プログラム内で識別子として使用できない。

var firstVar = 10;      // varは変数の定義のために予約されたキーワードである。
function myFirstFunc {  // functionは関数の定義のために予約されたキーワードである。
    var secondVar = 20; // varは変数の定義のために予約されたキーワードである。
}

コメント(comment)

コメント(comment)とは、コード内に挿入された一種の説明文である。コメントは作成者やほかの開発者が後でコードを修正するときに参考にでき、Webページ開発時のデバッグにも使用される。このようなコメントはJavaScriptコードのどの部分にも作成でき、Webブラウザーの動作にはまったく影響しない。

JavaScriptのコメントは次の2つの形式をサポートする。

構文

1. 1行コメント : // コメント文
2. 複数行コメント : /* コメント文 */
var x = 10;
// var y = 20; 1行コメント : この部分は実行されない。
/*
x = x + y;
複数行コメント :
この部分も実行されない。
*/
document.getElementById("text").innerHTML = x;

次の例は、JavaScriptで複数行コメントの中に別のコメントを挿入する例である。

/* 複数行
    // このように複数行コメントの中に別の1行コメントを挿入できる。
コメントである。 */

上の例のように、JavaScriptでは複数行コメントの内部に別の1行コメントを挿入できる。

しかし次の例のように、複数行コメントの内部に別の複数行コメントを挿入することはできない。

/* 複数行
    /* 別の複数行コメントである。 */
コメントである */

上の例のように複数行コメントの中に別の複数行コメントを挿入すると、挿入したコメントの終了を示す記号(*/)を、最初のコメントが自分の終了を示す記号(*/)として認識してしまう。したがって上の例で3行目はコメントとして正常に認識されず、Uncaught SyntaxErrorが発生して実行中のスクリプトは停止する。

そのため、JavaScriptで複数行コメントは絶対に入れ子にして使用してはならない。