js == 和 === 运算符的不同


看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



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值