JavaScript 第5版 - 2章 字句構造
JavaScript 第5版の「2章 字句構造」(15~20ページ)を読み進めていきます。
2.1 文字コード
- プログラムは16ビットのUnicodeとして扱われ、ECMAScript v3ではプログラム中にもUnicode文字が使える。
- ECMAScript v1~2では、Unicode文字の使用はコメントと文字列リテラルのみに制限される。
つまり、変数名などに日本語を使うこともできるということですが、コメントと文字列リテラル以外に日本語を使うケースは少なそうなので、これは頭の片隅にでも置いておけばよさそうです。
2.2 大文字と小文字
- プログラム中の大文字と小文字は区別される。
2.3 空白スペースと改行
- プログラム中のトークンを区切る空白、タブ、改行コードについては無視される。
2.4 セミコロン
- 同じ行に複数の文を記述しない場合にはセミコロン(
;
)は不要である。 - 一連のコードが複数行にまたがる場合、JavaScriptはそこにセミコロン(
;
)があるものとして解釈することがある。
例えば、次のような場合は文末のセミコロンは不要ということですね。
var a = 0
var b = 1
ただし、次のようなコードはreturn
とtrue
がそれぞれ別の文として扱われてしまうので、意図したものとは違う結果になります。
return
true;
不用意な改行は避け、凡ミスを防止したり、可読性を向上させるという意味でも、文末には必ずセミコロンを入れるようにしたほうがいいですね。
2.7 識別子
- 変数や関数、ループのラベルなどの識別子は、Unicode文字、アンダースコア(
_
)、ドル記号($
)のいずれかで始まり、その後はUnicode文字、数字、アンダースコア、ドル記号のいずれかでなければならない。 - ECMAScript v3では、識別子にUnicode文字やUnicodeエスケープシーケンスが使用できる。
- Unicodeエスケープシケーンスは、
\u
に続けて16ビットの文字コードを表す4桁の16進数文字列を記述する。
Unicodeエスケープシーケンスを使うケースは少なそうな気もしますが、例えば、π
という識別子は\u03c0
と同じということになります。
最近のJavaScriptのライブラリには$(~)
というような表記がよく出てきますが、この$
も正式な識別子ということになりますね。prototype.jsやjQuery、MooToolsなどでも$(~)
はオブジェクトを返す関数になっています。
プログラムを記述する際の基本的なルールである字句構造に関して言えば、C言語にも似た仕様になっています。改行とセミコロンの扱い方に注意しておけばよさそうです。
トラックバック (0)
この記事へのトラックバックはまだありません。
コメント (0)
この記事へのコメントはまだありません。