Javascript中兩個等於號和三個等於號的區別(==/===)


==//表示值的比較

===//表示對象類型的比較

1、對於string,number等基礎類型,==和===是有區別的。

a)不同類型間比較,==之比較“轉化成同一類型后的值”看“值”是否相等,===如果類型不同,其結果就是不等。

b)同類型比較,直接進行“值”比較,兩者結果一樣。

alert('1'==1);//結果是true
alert('1'===1);//結果是false

2、對於Array,Object等高級類型,==和===是沒有區別的。

進行“指針地址”比較。

3、基礎類型與高級類型,==和===是有區別的。

a)對於==,將高級轉化為基礎類型,進行“值”比較。

b)因為類型不同,===結果為false。

var a = new String('1');//定義一個string的高級類型
var b = '1';//定一個基礎類型字符串
alert(b==a);//為true
alert(b===a);//為false

參考:https://zhidao.baidu.com/question/564655390.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM