2011-10-12 106 views

回答

24

既可以使用var data = JSON.parse(yourString);var data = eval('(' + yourString+ ')');

1

使用JSON.parse

var obj = JSON.parse(str); 
+2

无效JSON,该字符串不会解析 – Joe

+1

JSON是一个对象,但对象不一定JSON..therefore这种方式不是预期的路径去。 – vsync

9

这是时代的一个eval实际上来自于有用:

var x = eval(yourString); 

但它绝对安全使用JSON.parse由其他答案的建议。

这是eval版本的working example

+2

Eww,eval ...; - \ –

+4

要正确评估这样的字符串,您实际上需要将其包装在括号内,例如: 'var x = eval('('+ yourString +')')',否则你会得到一个'SyntaxError'。 –

+0

@BradChristie - 是的,我同意!但是,如果jQuery不能使用,并且您需要支持旧浏览器... –

0

只需将该变量设置为该字符串即可。

var new_object = [{text: 'First Option', value: 'first'},{text: 'Second Option', value: 'second'},{text: 'Third Option', value: 'third'}] 
+2

有些东西告诉我,这不是一个“我怎么复制/粘贴这个JavaScript并获得一个对象”(虽然我可能是错的)。 –

0

如果你说jQuery,你可以使用jQuery.parseJSON。如果你不这样做,你可以从source code中提取功能并将它放在你的页面上,并且具有相同的优点。

+0

与'JSON.parse()'相同...... – vsync

相关问题