【发布时间】:2017-05-10 02:22:57
【问题描述】:
我目前在使用 JavaScript 循环时遇到问题。我有一个对象:
var object = {
objectInObject: {
name: "Banana"
},
objectInObject2: {
name: "Apple"
},
objectInObject3: {
name: "Carrot"
}
}
我正在遍历对象的对象:
for(var key in object){
var li = document.createElement('li');
li.textContent = object[key].name;
ul.appendChild(li);
li.addEventListener('click', function(){
console.log(object[key]);
})
}
我遇到的问题是当我添加一个事件侦听器并单击列表项(例如“香蕉”)时,当我 console.log 它仍然显示“胡萝卜”。因此,无论我单击哪个列表项,它都只会显示最新的一项。我不确定为什么会这样。任何帮助将不胜感激!
【问题讨论】:
标签: javascript loops object addeventlistener