可能重复:
How to parse JSON easily?如何这个JavaScript字符串转换为JavaScript数组/对象
我有这个字符串:
[{text: 'First Option', value: 'first'},{text: 'Second Option', value: 'second'},{text: 'Third Option', value: 'third'}]
如何转换成一个数组/对象在JavaScript中相同的形式?
可能重复:
How to parse JSON easily?如何这个JavaScript字符串转换为JavaScript数组/对象
我有这个字符串:
[{text: 'First Option', value: 'first'},{text: 'Second Option', value: 'second'},{text: 'Third Option', value: 'third'}]
如何转换成一个数组/对象在JavaScript中相同的形式?
既可以使用var data = JSON.parse(yourString);
或var data = eval('(' + yourString+ ')');
使用JSON.parse
var obj = JSON.parse(str);
这是时代的一个eval
实际上来自于有用:
var x = eval(yourString);
但它绝对安全使用JSON.parse
由其他答案的建议。
这是eval
版本的working example。
Eww,eval ...; - \ –
要正确评估这样的字符串,您实际上需要将其包装在括号内,例如: 'var x = eval('('+ yourString +')')',否则你会得到一个'SyntaxError'。 –
@BradChristie - 是的,我同意!但是,如果jQuery不能使用,并且您需要支持旧浏览器... –
只需将该变量设置为该字符串即可。
var new_object = [{text: 'First Option', value: 'first'},{text: 'Second Option', value: 'second'},{text: 'Third Option', value: 'third'}]
有些东西告诉我,这不是一个“我怎么复制/粘贴这个JavaScript并获得一个对象”(虽然我可能是错的)。 –
如果你说jQuery,你可以使用jQuery.parseJSON
。如果你不这样做,你可以从source code中提取功能并将它放在你的页面上,并且具有相同的优点。
与'JSON.parse()'相同...... – vsync
无效JSON,该字符串不会解析 – Joe
JSON是一个对象,但对象不一定JSON..therefore这种方式不是预期的路径去。 – vsync