- 一元运算符
var a = 0;
++a;
a++;
--a;
a--;
!true
- 算术运算符
var b = 7;
b++;
console.log(b);
++b;
console.log(b);
console.log(b++);
var c = 8;
var aa = 7;
var bb = 18;
c++;//18
aa= ++aa+c;//17
console.log(aa++);
console.log(aa);
- 比较运算符 == === >= <= != !==
console.log(undefined == null) //true
console.log(undefined === null) //false
- 逻辑运算符 && || !
//短路语句
console.log(1&&2&&4); //4
- 三元运算符
//条件?表达式1:表达式2
- 运算符优先级:一级运算符>算术运算符>比较运算符>逻辑运算符>三元运算符>赋值运算符
//例题
var a; //undefined
var b = a * 0; //b= NaN
if(b == b) {
console.log(b * 2 + "2" - 0 + 4);
}else {
console.log(!b * 2 + "2" - 0 + 4);
//true*2=1*2=2+"2"="22"-0=22-0=24+4=26
}
//例题2
if(typeof(a) && -true + (+undefined)+"") {
//true && -1+(NaN)+"" = "NaN"
console.log(2);
}else{
console.log(1);
}
//例题3
var res = !!" "+!!""-!!false || document.write("you");
//true+false-false=1-0-0=1
console.log(res);
总结+的作用:
- 在多元运算中与字符串在一起是连接符
- 一元运算符中转正数
- 和数值在一起做加法运算