操纵Json String Jquery

时间:2015-06-09 11:37:21

标签: javascript jquery json string

假设我有一个存储在vairable中的JSON STRING:

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

我怎样才能成功

["Joene", "Argel"]

3 个答案:

答案 0 :(得分: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>

答案 1 :(得分:1)

你提到你有一个字符串。请使用JSON.parse。另外,确保它是一个数组。然后,您可以手动迭代数组中的每个对象并推送值

&#13;
&#13;
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);
&#13;
&#13;
&#13;

答案 2 :(得分: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);