1、基本数据类型:
一、number、string、boolean、null、undefined、symbol、object,七种数据类型。
二、简单类型(基本类型)有number、string、boolean、null、undefined、symbol。
复杂类型由简单类型组成,复杂类型为object。ide
2、null和undefined区别:
一、都表示没有值
二、变量没赋值,就是undefiend
三、在if语句中,它们都会被自动转为false
四、对象声明未赋值通常惯例是让其值先为null
五、非对象变量声明不赋值,通常惯例是先让其值为nudefined,实际使用种直接声明变量不赋值便可。【var 变量名】没必要写成【var 变量名 = nudefined】code
3、string转义符、换行等问题:
代码书写多行字符串时(注意输出仍是一行),建议用+,不建议用转义符加空格方式,这样不易阅读。对象
var s = '123'+ '456' var s = '123\ 456' var s = '\'' s "'" var s = ''' VM178:1 Uncaught SyntaxError: Invalid or unexpected token
4、布尔值boolean的知识点:
一、boolean只有两个值true或false
二、boolean用于条件判断时,如下六种状况都是视为false
undefined
null
false
0
NaN
""或''(空字符串)token
5、number相关知识点:
一、JavaScript 内部实际上存在2个0:一个是+0,一个是-0,区别就是64位浮点数表示法的符号位不一样。它们是等价的。
二、几乎全部场合,正零和负零都会被看成正常的0。ip
-0 === +0 // true 0 === -0 // true 0 === +0 // true +0 // 0 -0 // 0 (-0).toString() // '0' (+0).toString() // '0'
三、惟一有区别的场合是,+0或-0看成分母,返回的值是不相等的。
(1 / +0) === (1 / -0) // false字符串
四、NaN(not a number)主要出如今将字符串解析成数字出错的状况下,NaN属于数值类型,它不等于任何值包括它自己。NaN在布尔运算时被看成false,与任何值运算包括本身获得的都是NaN。string
NaN === NaN // false Boolean(NaN) // false NaN + 32 // NaN NaN - 32 // NaN NaN * 32 // NaN NaN / 32 // NaN
6、object相关知识点:
一、object能够嵌套变量
var person = { 'name': '小明', 'child': { 'name': 'son' } }
二、object 的 key 只能是字符串,不存在其余类型的 key
三、object['key'] 能够写做 object.key
四、object.key 与 object[key] 不一样object
五、object的key不加引号状况下,需遵照标志符规则(首字母不能是数字,不能加引号等等),若是加引号则能够不遵照。数据类型
var obj = {9a:12}//不加引号对象key命名数字开头 【报错】Uncaught SyntaxError: Invalid or unexpected token var obj = {'9a':12} undefined var obj = {a b:'ab'}//不加引号对象key命名中间加空格 【报错】Uncaught SyntaxError: Unexpected identifier var obj = {'a b':'ab'} undefined