有大量关于==
和===
的教程,请不要引导我去基础教程,我的问题更加具体:
例如,http://www.w3schools.com/jsref/jsref_obj_string.asp说明:
语法:
var txt = new String("string");
// or more simply:
var txt = "string";
不错,但这个怎么样?
alert(new String("a") == new String("a")); // false
alert("a" == "a"); // true
var a = new String("a");
var b = new String("a");
alert(a == b); // false
var c = "a";
var d = "a";
alert(c == d); // true
alert(c === d); // true
alert (a === c); // false
当然,没有人会调用 new String()
,但是是否因为 new String()
被处理为对象而不是字符串导致相等性失败?
当然,W3Schools 不是最可信的来源,但我本来期望上述所有警报都会显示为 true
。
请解释。
new String()
?” - nnnnnnnew String()
。我想不出任何一个使用场景。 - Tim Down