我正在尝试为$ .each循环中的每个用户生成标记,以便我可以使用给定用户的相应userId
选择每个标记。
$.each($.parseJSON(window.usersArray), function (i, user) {
window.userMarkers[user['id']] = L.marker(98.76, 12.34).addTo(map);
console.log(window.userMarkers[user['id']]);
});
修改
我收到错误:
Cannot set property '3' of undefined
,其中3
是用户的ID。
答案 0 :(得分:2)
您需要先创建对象(或数组,具体取决于您的需要),然后才能向其中添加任何内容。
window.userMarkers = {};
$.each($.parseJSON(window.usersArray), function (i, user) {
window.userMarkers[user['id']] = L.marker(98.76, 12.34).addTo(map);
console.log(window.userMarkers[user['id']]);
});
答案 1 :(得分:1)
解决方案:在为其设置属性之前定义数组!例如:
window.userMarkers = new Array();