4-1 减法运算符 ( - )
// 在算术计算中先将数据转换为number,再计算
var a = true;
var b = "13";
var c = b-a;
/* var c = Number(b)-Number(a) */
console.log(c) // 输出12
"1"-9+"true"-parseInt(12.34) // NaN
"9"-8+"false" // 1false
"9"-8-"false" // NaN
"true1"-1 // NaN
4-2 加法运算符 ( + )
+ 运算符 特殊:遇到字符串变为 拼接符
// + 运算符 特殊:遇到字符串变为 拼接符
var a = "10";
var b = 1;
var c = true;
console.log(a+b-c) // 101-1= 100
console.log(a+b+c) // 101true
console.log(a-b+c) // 10
console.log(a+c-b) // NaN
// NaN和任何数值去计算,结果都是NaN
4-3 比较运算符 ( >,<,==)
,<,== 返回的是boolean
- 先将两边的值转为number,再比较
- NaN和任何值作比较,结果都为false
var a = true;
var b = "10"
var c = "hello"
console.log(a>b) // Number(a)>Number(b) 1>10 false
console.log(a>c) // Number(a)>Number(c) 1>NaN false
console.log(Boolean(NaN)) // false
// NaN和任何值作比较,结果都为false
4-4 值为 false的情况
undefined,””,NaN,0 ,null—> falsevar a;
console.log(a) // undefined
console.log(Boolean(a)) //false
console.log(Boolean(null)) // false