2017-03-22 52 views
-5
var a=new Number(6); 

var b=new Object(6); 
a===b; //false 

我只是不明白爲什麼=== b返回false。它有相同的類型,來自同一個實例。javascript中的數字和對象

+0

閱讀===''和''==檢查 – Weedoze

+0

的文檔了這一點:http://stackoverflow.com/questions/359494/which-equals-operator-vs-should-be-used -in-JavaScript的比較 – Syed

回答

0

在JS或其他方面,

==字符控制值。例如;

var a = "1"; 
var b = 1; 

a == b: return true 

===字符控制值和類型。例如;

a === b: return false 
1

那些是您無法通過價值進行比較的對象。這些對象通過參考進行比較。

var a=new Number(6); 

var b=new Object(6); 

var c=new Number(6); 

var d = a; 

a === b; //false 
a == c; // false 
b == c;//false 
a == d;//true 

這些都是原始的,任何你可以比較的價值。像字符串和數字這樣的基本元素通過它們的值進行比較。

var a= Number(6); 
var b= Number(6); 
a == b //true 
a === b //true