a==b
还是a===b
?两个变量可以指向相同的存储器但类型不同吗?因为javascript没有C ++中类的概念,所以我不知道对象的类型是什么。是否所有对象都具有相同的类型:“对象”,所以===确定它们的类型相等?如果是这样,===将与==相同。普通对象通过其引用进行比较]之类的对象。通过引用进行的比较基本上检查了给定的对象是否引用了内存中的相同位置。这是一个如何工作的示例。
var jangoFett = {
occupation: "Bounty Hunter",
genetics: "superb"
};
var bobaFett = {
occupation: "Bounty Hunter",
genetics: "superb"
};
var callMeJango = jangoFett;
// Outputs: false
console.log(bobaFett === jangoFett);
// Outputs: true
console.log(callMeJango === jangoFett);
您应该使用===,因为它可以避免难以发现的错误异常。并且很耗时,===也更好。