JavaScript 1.62005年09月09日 12時22分

前の記事で書いた Bug 306664 が修正済みとなり、Firefox 1.5 Beta 1 からは晴れて JavaScript 1.6 に対応するようになった。JavaScript 1.6 の新機能は前の記事に書いたとおり。実際に使用するには、

<script type="application/javascript; version=1.6">
// <![CDATA[

var xml = <element>content</element>;

// ]]>
</script>

という風に type 属性に version=1.6 パラメータを指定する。e4x=1 と指定しなくても E4X は有効になるし、逆に e4x=0 と指定しても無効にはならない。

<script language="JavaScript1.6">

と指定されたスクリプトも動作するが、この場合 E4X は有効にはならない

また、注意すべき点として、script 要素を知らないブラウザのために

<script type="application/javascript; version=1.6">
<!--

...

// -->
</script>

と内容をコメントアウトすると、その内容はまったく実行されない。<!--// のような一行コメントとしてではなく、XML リテラルのコメントの開始として解釈されるからだ。(E4X ではスクリプト中に XML 構文を直接記述できる。)

Bug 309242 の修正によりデフォルトで E4X が有効になった。<!-- から始まる行はこれまでどおり一行コメントとして解釈される。

HTML 4 では script 要素中に </ という文字列が現れてはいけないので、E4X を使う場合は外部スクリプトにしたほうがいいだろう。XHTML では CDATA セクションでスクリプトの内容を囲んでおいたほうがいい。