我有一些密码
var weibo = { weibo: { url: '//testurl.com', icon: 'fa fa-weibo' } }
var mail = { mail: { url: '//testurl.com', icon: 'fa fa-envelope' } }
var github = { github: { url: '//testurl.com', icon: 'fa fa-github' } }
var [key] = Object.keys(weibo)
var name = weibo[key]
console.log(weibo[key])
我想从weibo
获取对象并将其存储到名称变量中
但是名字显示[object object]
我没有使用What does [object Object] mean? (JavaScript)中的alert
我只想将变量存储到名称中,为什么chrome dev tools
显示[object object]
?
更新,请参阅我的gif
答案 0 :(得分:3)
这让我思考了一段时间,结果发现浏览器(MDN:Window.name)中定义了一个window.name
全局变量。
根据MDN: window.name会将所有值转换为它们的字符串表示形式 使用toString方法。
将toString
应用于对象时,输出将为[object object]
。
因此,要么将代码段封装在自己的范围内(可能在函数内),要么重命名name
变量。
答案 1 :(得分:1)
使用
var key = Object.keys(weibo)
var name = key[0]
答案 2 :(得分:1)
这是因为您已创建“微博”作为对象,并将其传递给原始数据类型引用“名称”。