2013-10-04 114 views
0

我有2 JSON對象的像這樣的字符串JSON對象轉換:如何通過逗號sepeted成目標

var param = '{"key1":"value1","key2":"value2"},{"key3":"value3"}'; 

如何可以分離成2對象像這樣在JavaScript ..

var objA = {"key1":"value1","key2":"value2"}; 
var objB = {"key3":"value3"}; 

回答

0

喜歡這張

var data = JSON.parse("[" + param "]"); 
objA = data[0]; 
objB = data[1]; 
+0

這是行不通的。 – SergeS

+0

對不起,我犯了一個錯誤,@SergeS更好地回答了它。 –

+0

thnx。它很好地工作 – androidraj

3

由於因爲這簡單 - 製造陣列從該對象

var param = '{"key1":"value1","key2":"value2"},{"key3":"value3"}'; 
var obj = JSON.parse('[' + param + ']'); 
var objA = obj[0]; 
var objB = obj[1]; 
+0

謝謝。它的工作正常 – androidraj

0

您JSON字符串錯誤。將您的代碼更改爲

var param = '[{"key1":"value1","key2":"value2"},{"key3":"value3"}]'; 
var jsonArr = JSON.parse(param); 
for(var i in jsonArr) { 
    var jsonObj = jsonArr[i]; 
    // jsonObj is your required object 
} 

看到這裏FIDDLE這裏。

0

你也可以這樣做;

var param = '{"objA": {"key1": "value1","key2": "value2"}, "objB": {"key3": "value3"}}', 
    obj = JSON.parse(param), 
    objA = obj.objA, 
    objB = obj.objB; 

console.log([obj, objA, objB]); 

jsfiddle