'=='操作符的小动作
生活随笔
收集整理的這篇文章主要介紹了
'=='操作符的小动作
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
[0] == true; // false
[] == ![]; // true
其中一個值是boolean值:兩個值都轉(zhuǎn)為數(shù)字,false轉(zhuǎn)為0,true轉(zhuǎn)為1 其中一個值是字符串,另一個是數(shù)字:都轉(zhuǎn)為數(shù)字再對比 其中一個是對象,另一個不是對象:調(diào)用對象的valueof方法,得到基本類型 其中一個是對象,另一個也是對象:對比對象指向的內(nèi)存地址是否相等 其中一個是null,另一個是undefined:結(jié)果為true NaN與任何類型(包括本身NaN)都不相等 null,undefined在進(jìn)行比較的時候,不進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換
相等操作符會有一個隱形的轉(zhuǎn)換,這個隱形的轉(zhuǎn)化會導(dǎo)致結(jié)果很"奇怪"。下面是隱形轉(zhuǎn)換的基本規(guī)則:
輸出結(jié)果分析
[0] == true;// 最終的對比形式 Number([0]) == Number(true); [] == ![];// !的運(yùn)算級別比 '==' 高,先進(jìn)行以下轉(zhuǎn)換 [] == false;// 再轉(zhuǎn)化為最終的對比形式 Number([]) == Number(false);'奇怪'的結(jié)果
undefined == 0; // falsenull == 0; //falsefalse == 0; //truetrue == 1; //truetrue == 2; //false[] == []; //false總結(jié)
以上是生活随笔為你收集整理的'=='操作符的小动作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于nuxt和iview搭建OM后台管理
- 下一篇: Java学习总结(二十)——JSON解析