久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

javascript - 【快速判斷數組為空】[]==false 為什么返回true?

瀏覽:132日期:2023-03-14 14:09:48

問題描述

console.log([]==false); //輸出為trueconsole.log([’1’]==false);//輸出為false

可見,這可以很快速判斷數組是否為空,但是原理上有些疑惑。已知:

1.相等操作符'==':先轉換再比較。 如果有一個操作數是布爾值,則在比較相等性之前將其轉換為數值false轉換為0,true轉換為1。

2.如果一個操作數是對象,另一個操作數不是,則調用對象的valueOf()方法,用得到的基本類型值進行轉換。

所以[]==fasle的右邊會被轉換成0。那左邊呢?是怎樣轉換的呢?

問題解答

回答1:

這個送給你,javascript 的對比表格:Relational and Equality Operators

javascript - 【快速判斷數組為空】[]==false 為什么返回true?

回答2:

http://tech.youzan.com/javasc... 看完你會懂的

回答3:

因為他們都會轉化為布爾值進行比較, []==false => true == false //false

回答4:

先轉為數字0,然后再對比吧。

回答5:

講道理判斷數組為空用這個是不行的吧!

if([]){ alert(’1111’);}

我以為它不會彈,結果還是彈了。大多數情況還是length來判斷。當然length判斷元素個數的時候也是坑!

回答6:

只能說js的內部機制是空數組就是false所以false==false成立啊!那非空數組自然轉換成true了true==false就不成立啊!有啥難理解的嗎?

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 欧美精品一区二区三区在线 | 亚洲精品一区二三区 | 黄色片免费在线观看 | 精品国产一区二区三区在线观看 | 九九在线精品 | 国产精品乱码久久 | 国产性色av| 欧洲精品视频在线观看 | 91精彩视频在线观看 | 免费在线成人网 | 国产亚洲一区二区精品 | 日本免费视频在线观看 | 精品日韩一区 | 成人在线免费视频观看 | 黄桃av | 欧美视频免费在线 | 一区二区在线看 | 国产欧美久久一区二区三区 | 亚洲一区二区精品在线观看 | 日韩视频一区二区三区在线观看 | 亚洲国产精品99久久久久久久久 | 久久久久久久国产精品 | 日韩视频在线观看中文字幕 | 精品国产18久久久久久二百 | 国产一级视频在线播放 | 午夜精品一区二区三区免费视频 | 亚洲精品夜夜夜 | 日韩在线成人av | 午夜精品影院 | 成人久久精品 | 成人在线观看av | 久久se精品一区精品二区 | 欧美成人精品一区二区三区 | 亚洲视频在线观看免费 | av中文字幕在线观看 | 国产午夜精品一区二区三区 | 中文字幕观看 | 人人干人人看 | 国产精品二区三区 | 在线播放91 | 欧美一级三级 |