javascript數(shù)字用64位浮點格式表示。在javascript中,數(shù)字不分為整數(shù)類型和浮點型類型,所有數(shù)字都是浮點型,統(tǒng)一展示為Number類型,采用IEEE754標(biāo)準(zhǔn)定義的64位浮點格式來表示;其能表示的最小值為“±5e-324”。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
javascript數(shù)字用64位浮點格式表示。
JavaScript 與許多其他編程語言不同,JavaScript 不定義不同類型的數(shù)字,比如整數(shù)、短、長、浮點等等。JavaScript 只有一種數(shù)字類型。
在JavaScript中,數(shù)字不分為整數(shù)類型和浮點型類型,所有的數(shù)字都是 浮點型類型,統(tǒng)一使用 Number 類型表示。JavaScript 采用 IEEE754 標(biāo)準(zhǔn)定義的 64 位浮點格式表示數(shù)字。它能表示最大值(Number.MAX_VALUE)為 ±1.7976931348623157e+308,最小值(Number.MIN_VALUE)為 ±5e-324。
此格式用 64 位存儲數(shù)值,其中 0 到 51 存儲數(shù)字(片段),52 到 62 存儲指數(shù),63 位存儲符號:
值 (aka Fraction/Mantissa) | 指數(shù)(Exponent) | 符號(Sign) |
---|---|---|
52 bits (0 – 51) | 11 bits (52 – 62) | 1 bit (63) |
Number 類型中還有一些比較特殊的值,分別為 Infinity、-Infinity 和 NaN,其中
-
Infinity:用來表示正無窮大的數(shù)值,一般指大于 1.7976931348623157e+308 的數(shù);
-
-Infinity:用來表示負(fù)無窮大的數(shù)值,一般指小于 5e-324 的數(shù);
-
NaN:即非數(shù)值(Not a Number 的縮寫),用來表示無效或未定義的數(shù)學(xué)運算結(jié)構(gòu),例如 0 除以 0。
提示:如果某次計算的結(jié)果超出了 JavaScript 中 Number 類型的取值范圍,那么這個數(shù)就會自動轉(zhuǎn)化為無窮大,正數(shù)為 Infinity,負(fù)數(shù)為 -Infinity。
精度
整數(shù)(不使用小數(shù)點或指數(shù)計數(shù)法)最多為 15 位。
var x = 999999999999999; // x 為 999999999999999 var y = 9999999999999999; // y 為 10000000000000000
小數(shù)的最大位數(shù)是 17,但是浮點運算并不總是 100% 準(zhǔn)確:
var x = 0.2+0.1; // 輸出結(jié)果為 0.30000000000000004
【