代码之家  ›  专栏  ›  技术社区  ›  user2049855

如何转换对象数组的格式

  •  0
  • user2049855  · 技术社区  · 7 年前

    我有一个变量,其中包含来自JSON的数据,如下所示:

     var dictionary = {
         "data": [{ "id": "0", "name": "ABC" }, { "id": "1", "name": "DEF" }],
         "images": [{ "id": "0", "name": "PQR" }, { "id": "1", "name": "xyz" }]
     };
    

    我想使用jquery拆分上述json数据,并将其存储在三个变量col[0]和col[1]中

    var names = Object.getOwnPropertyNames(dictionary);
    var col = [];
    col[0] = [{
      "id": "0",
      "name": "ABC"
    }, {
      "id": "1",
      "name": "DEF"
    }]
    col[1] = [{
      "id": "0",
      "name": "PQR"
    }, {
      "id": "1",
      "name": "xyz"
    }]
    

    这是我的代码:

    for (var i = 0; i < dictionary.length; i++) {
      for (var key in dictionary[i]) {
        if (col.indexOf(key) === -1) {
          col.push(key);
        }
      }
    }
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Hassan Imam Ravi kant    7 年前

    您可以使用 Object.values() .

    var dictionary = {
         "data": [{ "id": "0", "name": "ABC" }, { "id": "1", "name": "DEF" }],
         "images": [{ "id": "0", "name": "PQR" }, { "id": "1", "name": "xyz" }]
     };
     
    var col = Object.values(dictionary);
    console.log(col);