我在 Javascript 中遇到了这个问题:我想从对象数组中获取经度和纬度值。这一切都很好,但是当我尝试将其保存到全局数组中时,它会覆盖以前的每个值。结果是一个数组,其中包含最后一个推送对象的 8 倍。
全局数组:var _coordinates = [];
function getCoordinates()
{
mark = {};
for(var key in _data)
{
if(_data.hasOwnProperty(key)){
mark["lng"] = _data[key].long;
mark["lat"] = _data[key].lat;
}
console.log(mark); // Returns different coordinates (yay)
_coordinates.push(mark);
}
console.log(_coordinates); // All coordinates are the same (meh)
}
这是我第一次在这里提问。所以如果我忘记了什么,请说出来。