1これは完全に真実ではありません。Web 上のコードに影響を与えない、いくつかの軽微な下位互換性の変更があります。これらは ES6 仕様の セクション D.1 と セクション E.1 に詳しく記載されています。↩
2ソース: Allen Wirfs-Brock のツイート。https://twitter.com/awbjs/status/574649464687734785↩
1[Speaking JS] parseFloat()
(「Speaking JavaScript」)。↩
2[Speaking JS] parseInt()
(「Speaking JavaScript」)。↩
3[Speaking JS] 丸め誤差の詳細については、「Speaking JavaScript」の “Speaking JavaScript” で説明されています。↩
4内部的に、JavaScript には 2 つのゼロ があります。Math.sign(-0)
は結果として -0
を生成し、Math.sign(+0)
は結果として +0
を生成します。↩
1関数のエクスプレッションとオブジェクトリテラルは例外で、関数宣言とコードブロックのように見えるため、かっこで囲む必要があります。↩
2[Spec] 「Import」という記事は文法規則から始まり、セマンティクスに続きます。↩
3[Spec] GetExportedNames()
仕様メソッドは、モジュールのエクスポートを収集します。ステップ (7.d.i) では、チェックによって他のモジュールの既定のエクスポートが再エクスポートされないようにします。↩
4[Spec] 「Export」という記事は文法規則から始まり、セマンティクスに続きます。↩
1[Speaking JS] 「落とし穴:オブジェクトをマップとして使用する」↩
2「Closing Iterators」に基づいています。David Herman によるスライド。↩
3throw()
はオプションのメソッドですが、イテレーターには実質的に使用されないので、 ジェネレーターの章) で説明されています。↩
4「Combinator」(HaskellWiki) は、コンビネーターについて説明しています。↩
5つまり、この関数は、start
がオーバーフローして Infinity
になるまでカウントアップし、その時点からそれ以上変化しません。↩