Infinity 和 -Infinity
1 / 0; // Infinity
// Wait! WHAAAT?
Infinity
是全域性物件的屬性(因此是一個全域性變數),表示數學無窮大。它是對 Number.POSITIVE_INFINITY
的引用。
它比任何其他值都大,你可以通過除以 0 或通過計算一個大到溢位的數字的表示式得到它。這實際上意味著 JavaScript 中沒有 0 錯誤劃分,有 Infinity!
還有 -Infinity
是數學負無窮大,並且它低於任何其他值。
要獲得 -Infinity
,你可以否定 Infinity
,或者在 Number.NEGATIVE_INFINITY
中獲取它。
- (Infinity); // -Infinity
現在讓我們通過示例獲得一些樂趣:
Infinity > 123192310293; // true
-Infinity < -123192310293; // true
1 / 0; // Infinity
Math.pow(123123123, 9123192391023); // Infinity
Number.MAX_VALUE * 2; // Infinity
23 / Infinity; // 0
-Infinity; // -Infinity
-Infinity === Number.NEGATIVE_INFINITY; // true
-0; // -0 , yes there is a negative 0 in the language
0 === -0; // true
1 / -0; // -Infinity
1 / 0 === 1 / -0; // false
Infinity + Infinity; // Infinity
var a = 0, b = -0;
a === b; // true
1 / a === 1 / b; // false
// Try your own!