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)。