看w3c的定义
在 ECMAScript 中,等号由双等号(==)表示,当且仅当两个运算数相等时,它返回 true。
全等号由三个等号表示(===),只有在无需类型转换运算数就相等的情况下,才返回 true。
比较
== 相当于equals 会转换成同一类型坐值比较
=== 同时做值和类型比较
同时还有 != 和 !==
测试
<!DOCTYPE html>
<html>
<body>
<script>
person=new Object();
person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person1=new Object();
person1.firstname="Bill";
person1.lastname="Gates";
person1.age=56;
person2=person1;
document.write(person==person1);
document.write(person===person1);
document.write("<br>");
document.write(person2==person1);
document.write(person2===person1);
document.write("<br>");
var a="10";var b=10;
document.write(a==b);
document.write(a===b);
document.write("<br>");
obj=new Number(10);
document.write(obj==b);
document.write(obj===b);
</script>
</body>
</html>
结果
falsefalse //对高级对象比较 两者一样
truetrue //同一对象
truefalse//不同类型的
truefalse