请问这两个对象为什么不相等啊

tianyuping 2012-02-17 03:32:09
obj1={a:1,b:2}
obj2={a:1,b:2}
if(obj1==obj2){alert('相等')}
...全文
89 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Linux-Torvalds 2012-02-17
  • 打赏
  • 举报
回复
首先obj1和obj2都是object类型,它们的type一样。所以==

转变为===,然后根据===的规则处理。

对于两边都是object类型,===的规则是,如果两边是同一个object,则它们相等,返回true。
如果是不同的object,即使是两个object有完全相同的properties,则不相等,返回false。

上面的obj1和obj2就是有着完全相同的properties的两个不同object。
夜色镇歌 2012-02-17
  • 打赏
  • 举报
回复
++[Quote=引用 1 楼 uself 的回复:]

对象的地址不一样!
[/Quote]
三石-gary 2012-02-17
  • 打赏
  • 举报
回复
http://kb.cnblogs.com/a/1619321/
杨哥儿 2012-02-17
  • 打赏
  • 举报
回复
对象的地址不一样!

87,990

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧