2013-01-03 81 views
0

的數組我有一個AJAX調用,它返回一個string在理想情況下應該是陣列轉換一個ajax返回的字符串將數組

var jsonString = "[['name1', 30, 20], ['name2', 10, 100], ['name3', 140, 130]]"; 

這是得到恢復我的數組。我想將它轉化成數組

var jsonArray = [['name1', 30, 20], ['name2', 10, 100], ['name3', 140, 130]]; 

顯然string.split(",")不會工作的數組,並給了我9個元素的數組。

我該如何解析?

我的小提琴:http://jsfiddle.net/codovations/hgLJh/

回答

2

納文我檢查你的字符串,如果你確信你的字符串有「,而不是‘按數組元素,你可以替換它們’,然後你可以解析它們爲JSON:

JSON.parse('[["name1", 30, 20], ["name2", 10, 100], ["name3", 140, 130]]'); 

返回數組的陣列。

問候。

+0

很酷。我可以做一個string.replace並使其工作。哦,javascript的細微差別...... – naveen

1

使用JSON.parse()功能:

var jsonArray = JSON.parse(jsonString); 

但請注意,如果你傳遞給它的字符串是有效的JSON這隻會工作。你提供的不是--JSON字符串用雙引號括起來,而不是單個。

+0

你只是重複我在我的小提琴中寫的東西。 :) – naveen

+0

是的,無效的JSON。現貨! –

+0

@naveen - 你的小提示你正在使用jQuery,並且你已經知道答案。有什麼要問的? –

1

使用此字符串,您可以使用:JSON.parse(jsonString.replace(/'/g,'"'))

+0

謝謝。我明白了...非常感謝 – naveen

相關問題