Javascript 如何处理JSON数据?

Javascript 如何处理JSON数据?,javascript,arrays,json,object,Javascript,Arrays,Json,Object,好的,我有一个来自JSON的数据。此数据的结构如下所示: 如您所见,此数据包含一个具有名称、类型和值的数组。我需要做的是转换,以某种方式使用此函数: 此函数需要以以下格式提供数据: ['Country', 'Population', 'Area'], ['CN', 1324, 9640821], ['IN', 1133, 3287263], ['US', 304, 9629091], ['ID', 232, 1904569], ['BR', 187, 8514877] 因此,在我的情况下: [

好的,我有一个来自JSON的数据。此数据的结构如下所示:

如您所见,此数据包含一个具有名称、类型和值的数组。我需要做的是转换,以某种方式使用此函数:

此函数需要以以下格式提供数据:

['Country', 'Population', 'Area'],
['CN', 1324, 9640821],
['IN', 1133, 3287263],
['US', 304, 9629091],
['ID', 232, 1904569],
['BR', 187, 8514877]
因此,在我的情况下:

[name, type, value]
data iself

有什么帮助吗?

您可以使用array.prototype.map将项目数组转换为修改过的项目数组

在你的例子中,这可能是沿着这些线的东西

var flattened = object.data.map( function( item ){
      return [ item[0].name, item[0].type, item[0].value ];
});

这应该可以做到:

var result = data.map(function(item){
    var i = item[0];
    return [i.name, i.type, i.value];
}); // Map the data from objects to the require arrays.
result.unshift(['Country', 'Population', 'Area']); // Add the description row.

首先将源数据中的所有数据映射到结果数组中的[名称、类型、值]项,然后将描述数组添加到结果的前面。

开始。懒惰的程序员服务

// obj is your original json
var newdata = [];
for(var i=0;i<obj.data.length;i++)
  newdata.push([obj.data[i][0].name,obj.data[i][0].type,obj.data[i][0].value]);
newdata.unshift(['Country', 'Population', 'Area']);

到目前为止你试过什么?显示您的工作方式。另外,它看起来像是一个包含多个数组的数组,每个数组都包含一个对象。这可能会帮助你开始。json从哪里来?@Andy我不知道使用什么语法来获取值。我尝试了两个测试,但都不起作用,这就是为什么我没有附加任何代码。我知道这看起来很业余,但我不知道如何更好地解释它。不管怎样,下面的人提供了地图方法的精确解,这正是我想要的。谢谢,我对地图方法一无所知。这正是我想要的。很抱歉对我的问题做了如此糟糕的描述,但我不知道如何更好地解释它。你的答案和@Pawelt一样好非常感谢,它涵盖了我所需要的一切,你的答案和@Cerbusyeah一样好,我们在几秒钟前发布了非常相似的答案:不同的循环方法,但仍然和其他方法一样好,谢谢@Jabran Saeed