唯一数字类型:number
JavaScript采用 IEEE 754 的规范 双精度数字,JavaScript中只有一种数字类型:基于 IEEE 754 标准的双精度 。它并没有为整数给出一种特定的类型,所以所有的数字都是小数。
并且,当你定义x=123.000
时,x.toString()
只会得到字符串'123'。注意到,以下情况使用toString()结果都是123:
a=123.000;
b=123.;
c=1123;
是的没错,注意到第二种真的可以只带小数点,事实上这些都表示同一个值,都是等价的写法,且有a===b===c
。
重点来了,我们知道number类型自带toString方法,然而123.toString()
会报如下错误:
Uncaught SyntaxError: Invalid or unexpected token
事实上一如开头的例子,123.toString()
等价于123.000toString()
,也等价于123toString()
,你会发现其实错误在于少个点,所以报出以上非法语句的错误。
正确写法:123..toString()
对的,你又没看错,这是两个点,第一个是小数点,第二个是该number对象需要的点。
所有类型
值类型 ( 基本类型 ): 字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol;
引用数据类型: 对象(Object)、数组(Array)、函数(Function)。
参考链接: JavaScript 数据类型