7大数据类型
Undefined
Null
Boolean
String
Number
Symbol
Object
Undefined未定义,未赋值
undefined数据类型只有一个值,就是undefined。void运算可以把任一表达式变为undefined值,使用void 0获得undefined
Null已定义,语义表示空值。
null也只有一个值,即null
Boolean true,false
String
其实表示字符串的UTF16编码,最长是2的53次方减一(也是UTF16编码),通常的字符串操作也是针对此编码。无法改变?
Number
JavaScript 中的 Number 类型有 18437736874454810627(即 2^64-2^53+3) 个值。
浮点数精度问题导致,非整数的Nunber是不能用== ===比较。 console.log( Math.abs(0.1 + 0.2 - 0.3) <= Number.EPSILON);//true
Symbol
一切非字符串是对象的key的集合?
var mySymbol = Symbol("my symbol");
Object
对象,属性(数据属性和访问器属性)的集合。属性都是key-value组合,key可以是字符串或者symbol类型。
类型转换--尽量使用显式转换,然后使用===进行比较
stringtoNumber,使用Number()
numbertoString,十进制/科学计数法
网友评论