1.数据类型
分为原始类型和引用类型
原始类型分为数值型、字符串型、布尔型、未定义型、空
(1)数值型
整型
1 2 3 4 5........
浮点型
3141.5e-1
314.15
31.415e+1
(2)字符串型
被引号包含的数据就是字符串型,不区分单双引号
查看任意一个字符的Unicode码
例:'t'.charCodeAt()
(3)布尔型
只有两个值,分别是ture和false,代表真和假
用于保存只有两个值的数据,一些运算符的结果也是布尔型
(4)未定义型
只有一个值undefined
声明了变量未赋值则未为undefined,代表空值
(5)空
只有一个值null,和引用类型的数据一起使用
typeof 用于检测数据类型 'number'/'string'/'boolean'/'undefined'/'object' |
2.数据类型的转换
分为隐式转换和强制转换
(1)隐式转换
运算过程中自动产生的转换
①数字 + 字符串 数字转换为字符串
2 + '3' //'23'
②数字 + 布尔值 布尔值转换为数字 true -> 1 flase -> 0
2 + true //3
2 + false //2
③ 字符串 + 布尔值 布尔型转为字符串
'2' + true //'2true
加号(+)的作用 数字之间的加法运算 字符串之间的拼接 |
NaN: Not Number,不是一个数字,这个值是转数值失败的结果,NaN和任何数值执行加减乘除结果还是NaN
隐式转换为数值自动调用函数Number
(2)强制转换
①强制转换为数值
Number()
②强制转换为整型
parseInt()
用于将字符串和小数强制转换为整数,其他类型的结果为NaN
③强制转换为浮点型
parseFloat()
用于将字符串转为浮点型
④将数值和布尔值强制转换为字符串
toString()
3.运算符
表达式:由数据或者由运算符连接的数据组成的格式称作表达式
运算符分为算数运算符、比较运算符、逻辑运算符、位运算符、赋值运算符、三目运算符
(1)算数运算符
+ - * / % ++ --
(2)比较运算符
> < >= <= == != ===(全等于) !==(不全等于)
NaN和任何值比较(> < >= <= == ===)结果都是false |
(3)逻辑运算符
&& 逻辑与,关联的两个条件都是true,结果是true,否则是false
|| 逻辑或,关联的两个条件有一个是true,结果是true,否则falase
! 逻辑非,取反
短路逻辑
&&:当一个条件为false,就不再执行第二个条件
||: 当第一个条件为true,就不再执行第二个条件