数据类型

JavaScript数据类型有8种,分别是number、bigint、string、boolean、null、undefined、symbol、object。

JavaScript是一种弱类型语言,或者说动态类型语言。即每一个变量的类型在定义之后可变化的,JavaScript根据使用情况自动识别。

number类型

整数、浮点数。

范围:常规的数字、Infinity、-Infinity、NaN、

属于64位浮点类型,53位表示小数、10位表示指数位、1位表示符号位。

如果表示浮点数:指数部分最大是210=1024,此时number类型的范围是21024,大概是1.7976931348623157e+308。

过程:

log(2^1024) = 1024*log(2) = 1024 * 0.30102999566398114 = 308.2547155599167

此时number类型大概范围是:10308

如果表示整数时,范围是-253至253之间,不含两个端点。

number类型中特殊数值:Infinity、-Infinity、NaN。

Infinity 代表数学概念中的 无穷大 ∞。是一个比任何数字都大的特殊值。

示例1:

alert( 1 / 0 ); // Infinity

示例2:

alert( Infinity ); // Infinity

NaN 代表一个计算错误。它是一个不正确的或者一个未定义的数学操作所得到的结果,比如:

alert( "not a number" / 2 ); // NaN,这样的除法是错误的

任何对 NaN 的进一步操作都会返回 NaN:

alert( "not a number" / 2 + 5 ); // NaN

因此,在计算过程中有一个值是NaN,那么最终结果就是NaN。