2011-10-12 130 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

相關問題