以下的規定了一些特殊的比較:
null 和 undefined 是相等的。
null 和 undefined 不會轉換為任何其他型別
如果任何乙個操作的結果為 nan,那麼相等比較返回 false,不相等比較返回 true。
注意,即使兩個運算元都為 nan,返回結果一樣是 false,也就是說,nan 不等於 nan。
如果兩個運算元都是物件,那麼比較它們引用的值,如果引用同乙個物件,那麼,返回真,否則,返回假。
alert(null == undefined); // true
alert(undefined == null); // true
alert(true == 1); // true
alert(false == 0); // true
alert(true == 2); // false
var obj = {};
alert(10 == obj); // false
完全相同的比較 === 和不完全相等 !==
完全相同的比較用來比較不進行轉換是否相等,例如:
var a = "100";
var b = 100;
alert(a == b); // true
alert(a === b); // false
== 比較將返回真,因為 「100」 首先轉換為數字 100, 然後與數字 100 進行比較,結果相等。
=== 比較將返回假,因為字串 」100」 不經過轉換的話,與數字 100 不相等。
!== 用於比較在不轉換的情況下,是否不相等。
alert(a != b); // false
alert(a !== b); // true
第一種情況將返回假,因為轉換後是相等的。第二種情況將返回真,因為不經過轉換的話,他們乙個是字串,乙個是數字,是不相等的。
js中的相等與不等運算
如果其中乙個運算元的型別為 boolean 那麼,首先將它轉換為數字型別,false 轉換為 0,true 將轉換為 1。如果其中乙個運算元的型別是字串,另外乙個為數字型別,那麼,將字串轉換為數字進行比較。如果其中乙個運算元的型別是字串,另外乙個為 object 型別,那麼,將呼叫物件的 tostr...
相等與不等的轉化
相等關係和不等關係是數學量之間的兩種很重要的關係,他們都屬於確定性的關係,這兩種關係對應的數學刻畫方式是等式和不等式 但是在高中數學題目中,有些表面上看是相等關係,我們可以轉化為不等關係求變數的取值範圍,有些是不等關係,卻其實表達的是相等關係。不等關係轉化為相等關係,主要是由於函式性質 1 的介入和...
JS中的boolean與相等判斷
let bool new boolean false console.log bool true console.log bool false console.log bool true console.log bool false 結果是 false,false,true,boolean那麼問題來...