【发布时间】:2017-03-16 13:08:57
【问题描述】:
根据这些数据
[{"lat":"-1.325416","lng":"36.669051"},
{"lat":"-1.392932","lng":"36.768752"},
{"lat":"-1.390505","lng":"36.810023"},
{"lat":"-1.448266","lng":"36.952769"},
{"lat":"-1.267033","lng":"37.094882"},
{"lat":"-1.214605","lng":"37.053978"},
{"lat":"-1.169516","lng":"36.895608"}]
我正在尝试创建一个看起来像这样的 javascript 对象。
var outerCoords =[
{lat: -1.325416, lng: 36.669051},
{lat: -1.392932, lng: 36.768752},
{lat: -1.390505, lng: 36.810023},
{lat: -1.448266, lng: 36.952769},
{lat: -1.267033, lng: 37.094882},
{lat: -1.214605, lng: 37.053978},
{lat: -1.169516, lng: 36.895608},
{lat: -1.244058, lng: 36.730391}
],
不带双引号的属性值。 我首先将我的 json 字符串化以获取一个字符串,然后从字符串中删除双引号,然后解析没有双引号的结果。解析结果不会创建对象,它会返回一个字符串。请如果你能帮助我将不胜感激。 这就是正在做的事情。
var str= JSON.stringify(outercords1);
var x = str.replace (/"/g,'');
var obj= JSON.parse(x);
outercords 的值为:
[{"lat":"-1.325416","lng":"36.669051"},{"lat":"-1.392932","lng":"36.768752"},{"lat":"-1.390505","lng":"36.810023"},{"lat":"-1.448266","lng":"36.952769"},{"lat":"-1.267033","lng":"37.094882"},{"lat":"-1.214605","lng":"37.053978"},{"lat":"-1.169516","lng":"36.895608"}]
【问题讨论】:
-
请添加原始数据,你有。
-
JSON 需要双引号,少数数据类型除外,例如 Number 和 Bool。如果您正在解析对象,您将可以访问该值,不带引号。
-
你能发布
outercords1的值吗? -
[{"lat":"-1.325416","lng":"36.669051"},{"lat":"-1.392932","lng":"36.768752"},{"lat ":"-1.390505","lng":"36.810023"},{"lat":"-1.448266","lng":"36.952769"},{"lat":"-1.267033","lng":" 37.094882"},{"lat":"-1.214605","lng":"37.053978"},{"lat":"-1.169516","lng":"36.895608"}]
-
你确定它们是原始对象中的数字吗,因为如果它们是那么它们将不会被引用(只是测试过)
标签: javascript arrays json object