- + JavaScript の質問用スレッド vol.117 +
416 :デフォルトの名無しさん[sage]:2014/12/09(火) 21:06:23.18 ID:jqkVke/n - >>391
> なぜIE6〜8は配列の最後尾にカンマがあるとエラーになるのか? それがECMAScript3の正しい仕様だから。 なお、次のECMAScript5(ECMAScript4は廃止)が リリースされたのは2009年12月 IE6は2001年、IE7は2006年、IE8は2009年3月 IE9は2011年
| - + JavaScript の質問用スレッド vol.117 +
418 :デフォルトの名無しさん[sage]:2014/12/09(火) 22:30:22.13 ID:jqkVke/n - めんどくせーやつだな。じぶんでしらべろよ
http://dqn.sakusakutto.jp/2012/05/javascript-last-comma-matome.html ECMAScriptの仕様はどうなっているのか ECMAScript3 Standard ECMA-262 3rd Edition-December1999 「11.1.5 Object Initialiser」という章に記載があります。 Syntax ObjectLiteral : { } { PropertyNameAndValueList } PropertyNameAndValueList : PropertyName : AssignmentExpression PropertyNameAndValueList , PropertyName : AssignmentExpression ケツカンマなしスタイルで書かれています。 結論としては「ECMAScript3の世界ではケツカンマを書かないほうがよい」と言えるかと思います。 ECMAScript5 Standard ESMA 262 5.1 Edition 「11.1.5 Object Initialiser」という章に記載があります。 Syntax ObjectLiteral : { } { PropertyNameAndValueList } { PropertyNameAndValueList , } ケツカンマが明示的に記載されています。 「ECMAScript5の世界ではオブジェクトケツカンマは堂々と書いてよい」という結論になります。 (余談:ECMAScript5の配列ケツカンマについては、仕様書を見ても扱いがよくわかりませんでした。)
| - + JavaScript の質問用スレッド vol.117 +
419 :デフォルトの名無しさん[sage]:2014/12/09(火) 22:47:03.48 ID:jqkVke/n - Firefoxで。
[1,2,3].length => 3 [1,2,3,].length => 3 [1,2,3,,].length => 4 [1,2,3,,,].length => 5 [1,2,,3].length => 4 [1].length => 1 [,1].length => 2 [1,].length => 1 [,].length => 1 どういうこと?
| - Git 11©2ch.net
89 :デフォルトの名無しさん[sage]:2014/12/09(火) 23:50:26.02 ID:jqkVke/n - >>88
diff
|
|