2015-06-09 54 views
0

假設我有一個存儲在vairable這個JSON字符串:操縱JSON字符串的Jquery

{"name":"Joene Floresca"},{"name":"Argel "} 

我怎樣才能使它

["Joene", "Argel"] 
+2

你JSON是無效的沒有'[]'圍繞它,使它的陣列。 – CodingIntrigue

+0

'[{「name」:「Joene Floresca」},{「name」:「Argel」}]'這是正確的方法嗎? - @RGraham –

+0

您可以使用jQuery.parseJSON();請參閱http://api.jquery.com/jquery.parsejson/瞭解更多信息。 – aton1004

回答

1

你提到你有一個。爲此,使用JSON.parse。另外,確保它是一個數組。之後,您可以手動遍歷數組中的每個對象重複和推值

var str = '[{"name": "Joene Floresca"},{ "name": "Argel "}]'; 
 
var objA = JSON.parse(str); 
 
var values = []; 
 

 
for (var i = 0; i < objA.length; i++) { 
 
    for (var key in objA[i]) { 
 
    values.push(objA[i][key]); 
 
    } 
 
} 
 

 
console.log(values);

0

您可以通過objects迭代裏面陣列和存儲第二個數組中的名稱。

var data = JSON.parse('[{"name":"Joene Floresca"},{"name":"Argel "}]'); 
 
var names = []; 
 

 
data.forEach(function(model) { 
 
    names.push(model.name); 
 
}); 
 
// names now contains ["Joene Floresca", "Argel"] 
 
alert(names);

1

假設你的JSON是一個數組,你可以使用map

// Your JSON string variable 
 
var jsonString = '[{"name":"Joene Floresca"},{"name":"Argel "}]'; 
 
// Parse the JSON to a JS Object 
 
var jsObject = $.parseJSON(jsonString); 
 
// Use map to iterate the array 
 
var arr = $.map(jsObject, function(element) { 
 
    // Return the name element from each object 
 
    return element.name; 
 
}); 
 
console.log(arr); // Prints ["Joene Floresca", "Argel "]
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>