Javascript 将字符串数组转换为对象数组

Javascript 将字符串数组转换为对象数组,javascript,jquery,arrays,Javascript,Jquery,Arrays,我有一个数组,其中包含带有地理数据的字符串。 如何将其转换为如下对象数组: obj[0] = {lat:0, lng:0} 尝试使用array.prototype.map来简化您的工作 var newArray = arr.map(function(str){ return JSON.parse("{" + str.substring(0,str.length - 1).replace(/lat/,'"lat"').replace(/lng/,'"lng"') + "}") }); 此外

我有一个数组,其中包含带有地理数据的字符串。

如何将其转换为如下对象数组:

obj[0] = {lat:0, lng:0}

尝试使用array.prototype.map来简化您的工作

var newArray = arr.map(function(str){
 return JSON.parse("{" + str.substring(0,str.length - 1).replace(/lat/,'"lat"').replace(/lng/,'"lng"') + "}")
});
此外,如果该数组中的字符串格式正确,则可以删除一些不必要的
.replace()
,从而提高性能

您可以这样做:

<!DOCTYPE html>
<html>
<body>
    <script>
    var data = ["lat: 0, lng: 0;", "lat: 25.233, lng:22.455;"];
    var newData = new Array();
    for(var i = 0; i < data.length; i++)
    {
        var temp = data[i].replace(/lat/g, "\"lat\"");
        temp = temp.replace(/lng/g, "\"lng\"");
        temp = temp.replace(/;/g, "");
        temp = "{" + temp + "}";
        newData.push(JSON.parse(temp));
    }
    console.log(newData);
    </script>
</body>
</html>

var数据=[“纬度:0,液化天然气:0;”,“纬度:25.233,液化天然气:22.455;”;
var newData=newarray();
对于(变量i=0;i
此阵列来自何处?您不能在服务器端更改它吗?