鍍金池/ 問答/HTML/ 相同ID 做一組寫法

相同ID 做一組寫法

var testdata = {0:{test_id:80,id:3},1:{test_id:80,id:2},3:{test_id:95,id:3},4:{test_id:95,id:4}};

用JS 寫法,將兩個相同的test_id 做為一組。得到以下的結(jié)果。

var result = {
80:[{test_id:80,id:3},{test_id:80,id:2}],
95:[{test_id:95,id:3}, {test_id:95,id:4}]
}

回答
編輯回答
忠妾
    var b = {};
    result.forEach(function (obj) {
        var array = b[obj['id']] || [];
        array.push(obj);
        b[obj['id']] = array;
    });
    console.log(b);
2018年3月30日 13:41
編輯回答
厭遇
var res = Object.keys(testdata).reduce((res, next) => {
  let item = testdata[next];
  let { test_id } = item;
  if (res[test_id]) {
    res[test_id].push(item);
  } else {
    res[test_id] = [item];
  }
  return res;
}, {});
console.log(res);
2017年2月13日 13:21