JavaScript的操作符:
1.算数操作符;2.逻辑操作符;3.赋值操作符;4.比较操作符;5三元操作符。
---------------------------------------------------------------------------------------------------------------
和C语言的区别比较大的是:
1.比较操作符:
“==”:相等,只比较是否相等。
“===”“全等,比较值的同时比较数据类型是否相等。
”!=“:不想等,比较值是否不相等。
”!===“:不全等,比较值的同时比较数据类型是否不相等。
最终比较返回值的类型为:boolean型。
-------------------------------------
2.逻辑操作符
逻辑操作符的比较和C语言有区别的原因是多了NaN 和 null undefined这些数据类型的进来操作。
逻辑与:&& (在有一个操作数不是布尔值的情况下,逻辑操作不一定返回值,此时要遵循以下规则)
1.如果第一个操作数隐式类型转换后为true,则返回第二个操作数。
例:console.log("hello" && 3);得到的返回值为3;
console.long(80 && 30);得到的返回值为30;
2.如果第一个操作数隐式转换后为false。则返回第一个操作数。
例:console.log("" && 3);得到的返回值为 kong;
console.long(0 && 3);得到的返回值为0;
3.如果有一个操作数为null(或undefined或NaN)则返回null(或undefined或NaN)
例:console.log(55 && true && 33*"abc");因为最后相乘得到为nan所以得到的返回值为nan;
逻辑或:||
1.如果第一个操作数隐式类型转换后为true,则返回第一个操作数。
例:
2.如果第一个操作数隐式类型转化后为false,则返回第二个操作数。
例:console.log(0 || "" || null) 返回null
console.log(0 || "" || null || “hello”) 返回hello
var m; console.log("0" || m) 返回undefined
3.如果两个操作数是null(或Nan或者undefined)则返回null(或Nan或者undefined)。