Javascript
是一种弱类型或者说动态语言。最新的ECMAScript
标准定义了7种数据类型。
- 6 种原始类型:
Boolean
,Null
,Undefined
,Number
,String
,Symbol
(ES6新定义) - 还有
Object
.
这里引申出一个疑问:那function
是不是一种数据类型?
在 js 中,执行如下代码会打印function
。
typeof function(){} // function
这里需要指出的是,typeof
只是一个运算符,其返回值不能作为 js 类型系统的依据。因此,按照spec
,function
并不算是一种数据类型。function
比较特殊,spec
没有把它单独拿出来作为一种数据类型,可能是因为它同样有所有object
的特性吧。
新增第 8 种数据类型:BigInt