Javascript 将自定义字符串转换为json
如何将字符串转换为JSON 将此字符串设置为Javascript 将自定义字符串转换为json,javascript,json,Javascript,Json,如何将字符串转换为JSON 将此字符串设置为 x:100%,y:20%,radius:50% Json {"x":"100%","y":"20%","radius":"50%"} 您不需要jQuery来实现这一点 var s = "x:100%,y:20%,radius:50%"; var json = JSON.stringify( s.split(',').reduce(function(m,v) { var t = v.split(':'); m[t
x:100%,y:20%,radius:50%
Json
{"x":"100%","y":"20%","radius":"50%"}
您不需要jQuery来实现这一点
var s = "x:100%,y:20%,radius:50%";
var json = JSON.stringify(
s.split(',').reduce(function(m,v) {
var t = v.split(':');
m[t[0]] = t[1];
return m;
}, {})
);
如果您想与IE8兼容,请添加。这不是一个好主意,但您可以这样做:
var j = 'x:100%,y:20%,radius:50%'
j = '{"' + j.replace(/:/g,'":"').replace(/,/g,'","') + '"}'
console.log(j)
{"x":"100%","y":"20%","radius":"50%"}
然后可以使用JSON解析生成的字符串
JSON.parse(j)
Object {x: "100%", y: "20%", radius: "50%"}
@user007,因为您应该始终让可用库为您进行编码,除非您完全了解JSON格式和您提供的值。例如,引号可能需要转义。@user007,因为如果您的值包含逗号和冒号,它将替换逗号和冒号。可能是出了什么事wrong@dystroy,使用JSON对象仅用于解释和测试。它不是跨浏览器是的,JSON对象不是跨浏览器的,在较旧的internet Explorer中它缺少。所谓较旧的,你指的是IE7。甚至IE8也有。