js中的相等與不等運算

2022-01-26 14:47:12 字數 1357 閱讀 5606

如果其中乙個運算元的型別為 boolean ,那麼,首先將它轉換為數字型別,false 轉換為 0, true 將轉換為 1。 

如果其中乙個運算元的型別是字串,另外乙個為數字型別,那麼,將字串轉換為數字進行比較。 

如果其中乙個運算元的型別是字串,另外乙個為 object 型別,那麼,將呼叫物件的 tostring 方法之後,比較字串。 

如果其中乙個運算元的型別是數字型別,另外乙個為 object 型別,那麼,將物件轉換為數值後進行數字比較。

以下的規定了一些特殊的比較:

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

view code

完全相同的比較 === 和不完全相等 !== 

完全相同的比較用來比較不進行轉換是否相等,例如:

var a = "100"; 

var b = 100;

alert(a == b); //

true

alert(a === b); //

false

view code

== 比較將返回真,因為 「100」 首先轉換為數字 100, 然後與數字 100 進行比較,結果相等。 

=== 比較將返回假,因為字串 」100」 不經過轉換的話,與數字 100 不相等。

!== 用於比較在不轉換的情況下,是否不相等。

alert(a != b); //

false

alert(a !== b); //

true

view code

第一種情況將返回假,因為轉換後是相等的。第二種情況將返回真,因為不經過轉換的話,他們乙個是字串,乙個是數字,是不相等的。

js中的相等與不等運算

以下的規定了一些特殊的比較 null 和 undefined 是相等的。null 和 undefined 不會轉換為任何其他型別 如果任何乙個操作的結果為 nan,那麼相等比較返回 false,不相等比較返回 true。注意,即使兩個運算元都為 nan,返回結果一樣是 false,也就是說,nan ...

相等與不等的轉化

相等關係和不等關係是數學量之間的兩種很重要的關係,他們都屬於確定性的關係,這兩種關係對應的數學刻畫方式是等式和不等式 但是在高中數學題目中,有些表面上看是相等關係,我們可以轉化為不等關係求變數的取值範圍,有些是不等關係,卻其實表達的是相等關係。不等關係轉化為相等關係,主要是由於函式性質 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那麼問題來...