13

私は、SOでさえ、あまり成功せずに廃棄されたECMAScript4thEditionに関するいくつかの情報を探していました。私はMozillaのJavaScript1.7が第4版で提供される新機能の多く(すべて?)を実装していることを知っており、John Resigの良い投稿を覚えていると思いましたが、彼のブログでは今は見つかりません。

特に、ECMA-262 5th Editionを優先して完全に廃棄された理由と、単に改善されなかった理由を知りたいと思います。ジェネレーター、イテレーター、let、新しい代入演算子、(私の特にお気に入りの)代入の破棄など、いくつかの機能は非常に優れています。

これらの特定の機能はすべて、古いECMAScript実装を備えたブラウザーでエラーをスローするだけであることを知っていますが、いずれにせよ、これらの実装がほとんどないという知識を持って、それらを含めてみませんか?他にも理由はありましたか?廃止された機能の一部が将来のリリースで再び表示される可能性がありますか、それともベンダーが互換性を壊すことを恐れているため、標準に対するそのような改善はおそらく見られないでしょうか?

余談ですが、この問題についていくつかの意見を知っておくといいでしょう。第5版からいくつかの機能が削除されているのを見てイライラしますか、それともこの方法の方が良いと思いますか?ECMAScript 4の実装を試してみる価値はありますか?

4

4 に答える 4

21

簡単に言えば、ECMAScript4thEditionはありませんでした5版仕様から:

ECMAScriptの第4版を開発するために、重要な作業が行われました。その作業は完了しておらず、ECMAScriptの第4版として公開されていませんが、言語の継続的な進化を示しています。ECMAScriptの現在の第5版(ECMA-262第5版として公開)は、ブラウザーの実装間で一般的になっている言語仕様の事実上の解釈を体系化し、第3版の公開以降に出現した新機能のサポートを追加します。

基本的に、JavaScriptを前進させる方法については非常に強い意見がたくさんありましたが、その多くは互換性がなく、一部は崩壊する前に第4版になると考えられていたものにまとめられていました(特にいくつかの重要な実装者からのサポート)。一方、標準の新版は非常に遅れていたため、多くの事前交渉の後、2008年7月にさまざまな関係者がオスロに集まり、前進する方法について合意しました(Brendan Eich[JavaScriptの発明者]は後にそのアプローチと呼びました)それを書くときの「調和」)。

Harmonyはいくつかのことを延期し、いくつかのことを永久にテーブルから外し(名前空間、パッケージ、早期バインディング)、そして重要なことに、委員会が1999年以来の最初の仕様更新である第5版を進めることを可能にしました。

于 2010-02-24T21:25:38.543 に答える
7

主題に55分の余裕がある場合は、ビデオDouglas Crockford:“ The State and Future of ECMAScript”</a>またはトランスクリプトを参照してください。

于 2010-02-24T21:21:40.793 に答える
2

基本的に、それは実装するにはあまりにも多くの機能を備えた台所の流しになりつつありました。

于 2010-02-24T21:26:42.607 に答える
1

Coders At Workのインタビューでいくつかの議論がありましたが、インタビュー対象者の2人はこの問題の反対側にいました。

v4で作業している人々と、コミュニティの他の尊敬されているメンバーとの間で、言語に何を含めるべきかについて根本的な意見の不一致が生じたようです。

(ちなみにこの本を強くお勧めします)

于 2010-02-24T21:31:02.973 に答える