js中[]==[],为什么执行结果是false

如题如题如题如题如题如题

阅读 6.6k
2 个回答

[] 数组,在 Javascript 中是对象,对象使用 == 比较都是比较的引用。简单的说,就是,如果是同一个对象,就相等,如果不是同一个对象,就不等。每次使用 [] 都是新建一个数组对象,所以 [] == [] 这个语句里建了两个数据对象,它们不等。

如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。

[] == []的时候,从值上尽管两边都是[]但是从引用上两边是不相等的,LZ可以试试
var a = [];
var b = a;
console.log(a==b);//true
b = [];
console.log(a==b);//false

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
101 新手上路
子站问答
访问
宣传栏