javascript - 对象的属性值可以是对象吗?
本文介绍了javascript - 对象的属性值可以是对象吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
1.请问对象的属性值可以是对象吗?
2.`var a = {};
var b = {'key':123};
var c = {'key':456};
a[b] = 123;
a[c] = 456;
console.log(a[b]);`
3.为什么输出是456呢?不太理解,求教
解决方案
因为用对象作为key时,先会被隐式转换为字符串,其值为[object Object]
。所以a[b]
其实是a.[object Object]
,然后c也是对象,转换后key值一样,其实导致了重写,值变为456。
这篇关于javascript - 对象的属性值可以是对象吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文