4

JavaScript の数値型システムを見ています。

私はChromeを使用しています。15--数値リテラルを評価するとReferenceError、定数をデクリメントする意味がないため、が得られます。

期待どおりに評価するvar x=10;x--;と、すべてが機能します。

これはすべて意味があり、javascript 言語仕様に準拠var a=Infinity;a--してます。Infinity

しかし、驚いたことにInfinity--、他のリテラルInfinity++Infinityは異なります。

Number.POSITIVE_INFINITYこれは同じものに対しても起こります。

tl;dr:

Infinity--が結果として無限大を15--生成(new Number(15))--し、参照エラーを生成するのはなぜですか?

4

2 に答える 2

11
于 2013-02-08T17:10:59.540 に答える
1

無限大というものは存在しないため、それは概念であり、コーディングでは他の定数としてではなく、null や undefined などのオブジェクトとして構築されますが、Math で適切に動作するようにいくつかのプロパティがスローされます。メソッド。

于 2013-02-08T17:15:34.697 に答える