我有下面的代码片段:
var obj = new Object();
var foo = new Object();
var bar = new Object();
obj[foo] = 'hello';
obj[bar] = 'hi'
console.log (obj[foo])
它打印“hi”。这是为什么?
最佳答案
JS 中的对象只能有字符串键。当您执行 obj[foo]
时,实际上您执行的是 obj[foo.toString()]
。
您的代码将是
obj["[object Object]"] = 'hello';
obj["[object Object]"] = 'hi'
console.log (obj["[object Object]"])
关于JavaScript 对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39163957/