JavaScript の構文

概要: このチュートリアルでは、空白、文、識別子、コメント、式、キーワードなど、JavaScript の構文について学びます。

空白

空白とは、他の文字の間隔を表す文字のことです。JavaScript には、次の空白があります。

  • キャリッジリターン
  • スペース
  • 改行
  • タブ

JavaScript エンジンは空白を無視します。ただし、空白を使用してコードをフォーマットし、読みやすく保守しやすいようにすることができます。

次の JavaScript コードは空白を使用していません。

let formatted = true; if (formatted) {console.log('The code is easy to read');}Code language: JavaScript (javascript)

これは、空白を使用する次のコードと同等です。したがって、このコードの方がはるかに読みやすくなります。

let formatted = true;

if (formatted) {
  console.log('The code is easy to read');
}Code language: JavaScript (javascript)

JavaScript バンドラーは、JavaScript ファイルからすべての空白を削除し、デプロイ用に 1 つのファイルにまとめることに注意してください。これにより、JavaScript バンドラーは JavaScript コードを軽量化し、Web ブラウザでの読み込みを高速化します。

文とは、変数を宣言するか、JavaScript エンジンにタスクを実行するように指示するコードの一部です。単純な文は、セミコロン (;) で終了します。

セミコロン (;) はオプションですが、文を終了するためには常に使用する必要があります。

たとえば、次のコードは変数を宣言し、それをコンソールに表示します。

let message = "Welcome to JavaScript";
console.log(message);Code language: JavaScript (javascript)

ブロック

ブロックとは、ゼロ個以上の単純な文のシーケンスです。ブロックは、中かっこ {} のペアで区切られます。例:

if (window.localStorage) {
  console.log('The local storage is supported');
}Code language: JavaScript (javascript)

識別子

識別子とは、変数、パラメータ、関数、クラスなどに選択する名前です。

識別子名は、文字 (a-z または A-Z)、アンダースコア (_)、またはドル記号 ($) で始まり、その後に (a-zA-Z)、数字 (0-9)、アンダースコア (_)、ドル記号 ($) を含む文字のシーケンスが続きます。

文字は ASCII 文字セットに限定されず、拡張 ASCII や Unicode を含めることができますが、推奨されていません。

JavaScript の識別子は大文字と小文字を区別します。たとえば、messageMessage とは異なります。

コメント

コメントを使用すると、JavaScript コードにメモやヒントを含めることができます。コードを実行するとき、JavaScript エンジンはコメントを無視します。

JavaScript は、1 行コメントとブロックコメントの両方をサポートしています。

1 行コメント

1 行コメントは、2 つのスラッシュ文字 (//) で始まります。これにより、同じ行の // に続くすべてのテキストがコメントに変わります。例:

// this is a single-line commentCode language: JSON / JSON with Comments (json)

ブロックコメント

区切られたコメントは、スラッシュとアスタリスク /* で始まり、次の例のように反対の */ で終わります。

/* This is a block comment
that can span multiple lines */Code language: JSON / JSON with Comments (json)

式とは、値を評価するコードの一部です。例:

2 + 1

上記の式は 3 を返します。

キーワードと予約語

JavaScript は、特定の用途を持つ予約済みキーワードのリストを定義しています。したがって、言語規則により、予約済みキーワードを識別子またはプロパティ名として使用することはできません。

次の表は、ECMA-262 で定義されている JavaScript の予約語を示しています。

breakcasecatch
continuedebuggerdefault
elseexportextends
functionifimport
newreturnsuper
throwtrynull
voidwhilewith
classdeletefinally
inswitchtypeof
yieldconstdo
forinstanceofthis
var

予約済みキーワードに加えて、ECMA-252 は、識別子またはプロパティ名として使用できない、将来の予約語のリストも定義しています。

enumimplementslet
protectedprivatepublic
awaitinterfacepackage
implementspublic

まとめ

  • キャリッジリターン、スペース、改行、タブを含む空白を使用してコードをフォーマットします。JavaScript エンジンは空白を無視します。
  • 単純な文を終了するには、セミコロン (;) を使用します。
  • 1 つ以上の単純な文をグループ化するブロックを作成するには、中かっこ ({}) を使用します。
  • 1 行コメントは // で始まり、その後にテキストが続き、ブロックコメントは /* で始まり */ で終わります。JavaScript エンジンはコメントを無視します。
  • 識別子は、変数、関数、クラスなどに選択する名前です。
  • 識別子には予約済みキーワードを使用しないでください。

クイズ

このチュートリアルは役に立ちましたか?