为了账号安全,请及时绑定邮箱和手机立即绑定

js比较运算符比较两个对象的问题?

js比较运算符比较两个对象的问题?

一只名叫tom的猫 2018-08-14 09:10:47
mdn:当两个操作数都是对象时,JavaScript会比较其内部引用,当且仅当他们的引用指向内存中的相同对象(区域)时才相等,即他们在栈内存中的引用地址相同。a().c() 和 a() 都指向的是b,为什么会不相等呢?难道他们的内存地址不一样?
查看完整描述

1 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

javascript 中对象的比较不是值得比较,是引用的比较和对象拥有的属性以及值并没有半毛线关系, 两个对象的引用是一样的才是相等的并且 == 与 === 对于对象的比较来说并没有区别都是引用的比较;

a().c() 返回的是一个新定义的b 对象
a() 返回的也是一个新的定义的b对象

都是新的对象并没有指向同一个引用,所以false;


查看完整回答
反对 回复 2018-09-19
  • 1 回答
  • 0 关注
  • 965 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信