将JSON / JS对象转换为数组

时间:2014-10-13 17:20:11

标签: javascript arrays json

我的API中有一个JSON响应,其结构如下:

{
  "data": [
    {
      "id": "1", "name": "test"
    },
    {
      "id": "2", "name": "test2"
    }
  ]
}

当我引用数据时,我得到每个记录的数组。我需要花括号作为括号,因为我使用的插件要求它是一个数组。

期望的输出:

[
  ["1", "test"],
  ["2", "test"]
]

如何将上述JSON转换为此?

编辑:

这对我使用的插件来说是一个问题,我一直都知道如何做到这一点。以为我疯了,但我的代码很好,有些插件搞砸了。

2 个答案:

答案 0 :(得分:2)

您可以使用Array.prototype.map

执行此操作
var arr = json.data.map(function(x){ 
   return [x.id, x.name]; 
});

答案 1 :(得分:0)

这样的事情可能是:http://jsfiddle.net/3gcg6Lbz/1/

var arr = new Array();
var obj = {
  "data": [
    {
      "id": "1", "name": "test"
    },
    {
      "id": "2", "name": "test2"
    }
  ]
}

for(var i in obj.data) {
  var thisArr = new Array();
  thisArr.push(obj.data[i].id);
  thisArr.push(obj.data[i].name);
  arr.push(thisArr);
}

console.log(arr);