JavaScript == 等號運算子
等號運算子可以比較左右兩個運算數是否相等。
如果相等則返回true,否則返回false。
初學者可能認為此運算子極其簡單,這可能太過於輕視此運算子。
下面將通過程式碼例項對它的用法做一下詳細介紹。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼let a=1,b=2; console.log(a==b);
程式碼執行效果截圖如下:
數字之間的比較直觀,相等則返回true,否則返回false。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(true==1); console.log(false==0); console.log(true==2); console.log(false==-2);
程式碼執行效果截圖如下:
如果運算數中有一個是布林值,一個是數字。
那麼首先將布林值轉換為數字,true轉換為1,false轉換為0。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log("8"==8);
程式碼執行效果截圖如下:
如果兩個運算元一個是數字一個是字串。
那麼首先嚐試將字串轉換為數字,然後進行比較。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let obj={ toString:function(){ return "螞蟻部落" } } console.log(obj=="螞蟻部落");
程式碼執行效果截圖如下:
如果運算元中一個是物件,一個是字串。
那麼首先嚐試將物件轉換為字串,再進行比較。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let obj={ valueOf:function(){ return 5; } } console.log(obj==5);
程式碼執行效果截圖如下:
如果運算元中一個是物件,一個是數字。
那麼首先嚐試將物件轉換為數字,然後再去比較。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(null==undefined);
程式碼執行效果截圖如下:
null和undefined是兩個特殊的值,但是用等號比較兩者,返回值為true。
關於null與undefined的基本用法可以參閱JavaScript undefined與null區別一章節。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(NaN=="A"); console.log(NaN==NaN);
程式碼執行效果截圖如下:
NaN與任何運算元比較返回值都是false,包括與自己比較。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log([5]==[5]);
程式碼執行效果截圖如下:
返回值竟然是false,說明兩者不相等。
雖然看起來兩個陣列是一模一樣,簡直就是毫無瑕疵的雙胞胎。
再像的雙胞胎也是兩個獨立的個體,上面是兩個不同的陣列物件。
如果運算元是物件(引用型別資料),比較是兩個物件的地址。
關於引用型別資料可以參閱JavaScript值型別和引用型別一章節。
總結如下:
等號運算子比較包容一些,運算元可以進行資料型別轉換。
這一點與全等運算子(===)不同,具體參閱JavaScript ===運算子一章節。
關於資料型別轉換可以參閱JavaScript 資料型別轉換一章節。
相關文章
- JavaScript 等號 = 賦值運算子JavaScript賦值
- JavaScript 三個等號 === 全等運算子JavaScript
- JavaScript - 負號運算子JavaScript
- JavaScript + 正號運算子JavaScript
- JavaScript (+) 正號運算子JavaScript
- JavaScript >> 有符號右移運算子JavaScript符號
- JavaScript >>> 三個大於號無符號右移運算子JavaScript符號
- JavaScript in 運算子JavaScript
- JavaScript運算子JavaScript
- JavaScript -= 運算子JavaScript
- JavaScript += 運算子JavaScript
- JavaScript *= 運算子JavaScript
- JavaScript %= 運算子JavaScript
- JavaScript |= 運算子JavaScript
- JavaScript <<= 運算子JavaScript
- JavaScript >>>= 運算子JavaScript
- JavaScript >>= 運算子JavaScript
- JavaScript &= 運算子JavaScript
- JavaScript ^= 運算子JavaScript
- JavaScript /= 運算子JavaScript
- javascript中&&運算子和||運算子的使用JavaScript
- JavaScript * 乘法運算子JavaScript
- JavaScript / 除法運算子JavaScript
- JavaScript void 運算子JavaScript
- JavaScript + 加法運算子JavaScript
- JavaScript new 運算子JavaScript
- JavaScript typeof 運算子JavaScript
- JavaScript (+) 加法運算子JavaScript
- JavaScript << 左移運算子JavaScript
- JavaScript - 減法運算子JavaScript
- JavaScript (<) 小於運算子JavaScript
- JavaScript !== 不全等運算子JavaScript
- JavaScript 兩個++ 運算子JavaScript
- JavaScript % 求餘運算子JavaScript
- JavaScript (>) 大於運算子JavaScript
- JavaScript 展開運算子JavaScript
- JavaScript (--) 遞減運算子JavaScript
- JavaScript 剩餘運算子JavaScript