Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jquery中解析数组中的对象?_Javascript_Jquery - Fatal编程技术网

Javascript 如何在jquery中解析数组中的对象?

Javascript 如何在jquery中解析数组中的对象?,javascript,jquery,Javascript,Jquery,下面我从php变量中得到这个json。现在我如何将这个对象解析为数组 [ { "fjsd_loc_id": "1", "sum(fjsd_pending_cnt)": "174", "sum(fjsd_running_cnt)": "123", "sum(fjsd_failed_cnt)": "52", "sum(fjsd_success_cnt)": "116" }, { "fjsd_loc_id": "1", "sum(fjsd_pending_cnt)": "54", "s

下面我从php变量中得到这个json。现在我如何将这个对象解析为数组

[
    { "fjsd_loc_id": "1", "sum(fjsd_pending_cnt)": "174", "sum(fjsd_running_cnt)": "123", "sum(fjsd_failed_cnt)": "52", "sum(fjsd_success_cnt)": "116" },
    { "fjsd_loc_id": "1", "sum(fjsd_pending_cnt)": "54", "sum(fjsd_running_cnt)": "143", "sum(fjsd_failed_cnt)": "3", "sum(fjsd_success_cnt)": "201" },
    { "fjsd_loc_id": "1", "sum(fjsd_pending_cnt)": "124", "sum(fjsd_running_cnt)": "432", "sum(fjsd_failed_cnt)": "546", "sum(fjsd_success_cnt)": "65" },
    { "fjsd_loc_id": "2", "sum(fjsd_pending_cnt)": "43", "sum(fjsd_running_cnt)": "43", "sum(fjsd_failed_cnt)": "23", "sum(fjsd_success_cnt)": "76" },
    { "fjsd_loc_id": "2", "sum(fjsd_pending_cnt)": "42", "sum(fjsd_running_cnt)": "123", "sum(fjsd_failed_cnt)": "223", "sum(fjsd_success_cnt)": "70" },
    { "fjsd_loc_id": "2", "sum(fjsd_pending_cnt)": "34", "sum(fjsd_running_cnt)": "234", "sum(fjsd_failed_cnt)": "12", "sum(fjsd_success_cnt)": "1" },
    { "fjsd_loc_id": "3", "sum(fjsd_pending_cnt)": "123", "sum(fjsd_running_cnt)": "23", "sum(fjsd_failed_cnt)": "320", "sum(fjsd_success_cnt)": "12" },
    { "fjsd_loc_id": "3", "sum(fjsd_pending_cnt)": "432", "sum(fjsd_running_cnt)": "23", "sum(fjsd_failed_cnt)": "23", "sum(fjsd_success_cnt)": "0" },
    { "fjsd_loc_id": "3", "sum(fjsd_pending_cnt)": "57", "sum(fjsd_running_cnt)": "257", "sum(fjsd_failed_cnt)": "332", "sum(fjsd_success_cnt)": "3" }
]

您需要
JSON.parse
it(无需jQuery):

如果您确实想要jQuery:

var $arr = $.parseJSON('[{"fjsd_loc_id":"1","sum(fjsd_pending_cnt)":"174","sum(fjsd_running_cnt)":"123","sum(fjsd_failed_cnt)":"52","sum(fjsd_success_cnt)":"116"},{"fjsd_loc_id":"1","sum(fjsd_pending_cnt)":"54","sum(fjsd_running_cnt)":"143","sum(fjsd_failed_cnt)":"3","sum(fjsd_success_cnt)":"201"},{"fjsd_loc_id":"1","sum(fjsd_pending_cnt)":"124","sum(fjsd_running_cnt)":"432","sum(fjsd_failed_cnt)":"546","sum(fjsd_success_cnt)":"65"},{"fjsd_loc_id":"2","sum(fjsd_pending_cnt)":"43","sum(fjsd_running_cnt)":"43","sum(fjsd_failed_cnt)":"23","sum(fjsd_success_cnt)":"76"},{"fjsd_loc_id":"2","sum(fjsd_pending_cnt)":"42","sum(fjsd_running_cnt)":"123","sum(fjsd_failed_cnt)":"223","sum(fjsd_success_cnt)":"70"},{"fjsd_loc_id":"2","sum(fjsd_pending_cnt)":"34","sum(fjsd_running_cnt)":"234","sum(fjsd_failed_cnt)":"12","sum(fjsd_success_cnt)":"1"},{"fjsd_loc_id":"3","sum(fjsd_pending_cnt)":"123","sum(fjsd_running_cnt)":"23","sum(fjsd_failed_cnt)":"320","sum(fjsd_success_cnt)":"12"},{"fjsd_loc_id":"3","sum(fjsd_pending_cnt)":"432","sum(fjsd_running_cnt)":"23","sum(fjsd_failed_cnt)":"23","sum(fjsd_success_cnt)":"0"},{"fjsd_loc_id":"3","sum(fjsd_pending_cnt)":"57","sum(fjsd_running_cnt)":"257","sum(fjsd_failed_cnt)":"332","sum(fjsd_success_cnt)":"3"}]');

假设您想要数组数组而不是对象数组,这取决于映射。下面是一个最简单的例子:

var output = input.map(function(currVal) {
  let temp = [];
  temp.push(currVal["fjsd_loc_id"]);
  temp.push(currVal["sum(fjsd_pending_cnt)"]);
  temp.push(currVal["sum(fjsd_running_cnt)"]);
  temp.push(currVal["sum(fjsd_failed_cnt)"]);
  temp.push(currVal["sum(fjsd_success_cnt)"]);
  return temp;
});
然而,这是非常容易出错的,因为名称中的错误是可能的,并且将在数组中显示undefined,这可能是一个问题。更灵活的解决办法是:

var output2 = input.map(function(currVal) {
  var temp = []; var i = 0;
  var keys = Object.keys(currVal);

  for(i=0; i< keys.length; i++) {
    temp.push(currVal[keys[i]]);
  }

  return temp;
});

这已经是一个数组了,你能澄清一下你的意思吗?正如Kenny所说,这已经是一个数组了这是一个对象数组,我需要一个数组。
var output2 = input.map(function(currVal) {
  var temp = []; var i = 0;
  var keys = Object.keys(currVal);

  for(i=0; i< keys.length; i++) {
    temp.push(currVal[keys[i]]);
  }

  return temp;
});