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

ただし、次のようなコードはreturntrueがそれぞれ別の文として扱われてしまうので、意図したものとは違う結果になります。

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)

この記事へのトラックバックはまだありません。

この記事のトラックバックURI
http://dxd8.com/archives/40/trackback/
この記事のURI
http://dxd8.com/archives/40/