在 JavaScript 中填充数组

Fill Array in Javascript

本文关键字:数组 填充 JavaScript      更新时间:2023-09-26

如何在Javascript中填充这种类型的数组。

var neighborhoods = [
    {lat: 52.511, lng: 13.447},
    {lat: 52.549, lng: 13.422},
    {lat: 52.497, lng: 13.396},
    {lat: 52.517, lng: 13.394}
];

我已经尝试过这种方式,但它没有发生

$.each(result.geoloc, function(index,geoloc) {
    geoloc_split=geoloc.Geoloc.split(',');
    // alert(geoloc_split[0]+","+geoloc_split[1]);
    var lat="lat: "+geoloc_split[0];
    var lng = "lng: "+geoloc_split[1];
    neighborhoods.push(lat,lng);
    geoloc_split="";
});

您只将值推送到数组。您需要推送新对象(例如,使用对象文字创建它)。此外,您需要将字符串值转换为浮点数:

var lat = parseFloat(geoloc_split[0]);
var lng = parseFloat(geoloc_split[1]);
neighborhoods.push({
    lat: lat,
    lng: lng
});

在 ES6 中,您可以使用属性值速记:

neighborhoods.push({lat, lng});

你应该这样做:

$.each(result.geoloc, function(index,geoloc) {
     geoloc_split=geoloc.Geoloc.split(',');
     neighborhoods.push({
         lat:parseFloat(geoloc_split[0]),
         lng:parseFloat(geoloc_split[1])
     });
     geoloc_split="";
});

因为你的邻域数组是一个对象数组,所以你需要用对象填充它。