1. 赋值运算符
1.1 =赋值
let a; a=1;
1.2 +=赋值(-=, *=, /=, %=)
let a = 0; a+=1;
1.3 ++自加--自减
let a = 0; a++, ++a, a--, --a // 符号在前先计算后使用,符号在后先使用后自增自减
2. 算术运算符(+-*/%)
a = a + b; a = a - b; a = a / b; a = a % b;
2.1 隐式类型转换
字符串+数值=字符串
字符串-数值=数值 // 空字符串转换为0, 数值字符串能否转数值待确认?,字母不能转数字
null转数值=0
undefined转数值=NaN
2.2 显示类型转换
Number(str) = 数值
parseInt('12.95px') = 12 // 得到整数
parseFloat('12.95px') = 12.95 // 得到小数
3. 比较运算符
大于(>),大于等于(>=)
小于(<),小于等于(<=)
等于(==) ,不等于(!=) // 值相等,值不相等
全等(===),不全等(!==) // 类型和值都相等,类型或值不相等
4. 逻辑运算符
4.1 与或非
&& 与,|| 或,! 非
4.2 逻辑中断
let x = y || 0; // 返回第一个为真对象(或最后一个值?最后一个真值?)
'' // 空字符串 转boolean 为 false
0 // 数字0 转boolean 为 false
undefined 转boolean 为 false
null 转boolean 为 false
NaN 转boolean 为 false
上记以外的值转boolean 为 true