JS七大基本类型
JavaScript的七种基本类型分别包括:Boolean(布尔型)、Number(数字类型)、String(字符串类型)、Null(空)、Undefined(未定义)、Object(对象类型)、Symbol(符号型)。
Boolean
与Java语言中的boolean相似,代表逻辑的真与假,只有true与false两个值,true代表真,false代表假。
Number
在Js中,无论是浮点数还是整数都归为Number类型,数值大小范围在-(2^63 -1) 到 2^63 -1之间,除了一般的浮点数和整数外,还有+Infinity与-Infinity这两个数值代表无穷大与无穷小,此外还有一个特殊值NaN表示非数字。如果想测试一个参数或者表达式是否是一个非数字类型可以使用isNaN()方法来测试。
String
与Java的String类型相似,JS中的字符串是不可修改的原始值,要改变字符串的值只能生成新的字符串赋值。JS的字符串可以是一个字符或者多个字符组成,由' '或者“ ”包围,可以通过下标和索引来查找字符串的单个字符 。
Null
Null类型只有null一个值,代表变量值为空,通常指变量未指向任何值或者对象。在调用typeof null时会返回object。
Undefined
Undefined类型也只有undefined一个值,代表变量未被初始化。与null相比较,null强调变量为空,而undefined强调变量未定义未初始化。而null==undefined时,却会返回true,因为null在进行比较时会进进行类型转换,因此在比较null和undefined的变量时,应该使用===进行严格相等比较或者!==严格不相等比较。
Object
js中的Object类型与其他编程语言中对象类型相似,一个object对象中可以包含一个或多个属性,每个属性都由一个 键值对组成,属性值可以是数值类型、布尔类型、字符串类型甚至是对象类型等任意类型,而键可以是字符串类型或者符号类型。
Symbol
Symbol类型是在ES6后引入的基本数据类型,其存在是为了在对象属性名上预防冲突,表示独一无二的值,Symbol类型的数值只有由函数Symbol()生成。