Javascript从一种格式转换数据,所以另一种格式可以读取它

时间:2016-07-26 09:37:09

标签: javascript arrays

如果有一些代码正在读取一些看起来像这样的数据:

[[1423008000000,1],[1423094400000,1]]

我现在已经提供了一些不同格式的其他数据,如下所示:

{"1300752000000":11,"1301356800000":4}

我在一个名为data的变量中得到了数据。

我的问题是,如何将底部示例转换为顶部的示例?

2 个答案:

答案 0 :(得分:1)

您可以使用map功能,如下所示

var data = {"1300752000000":11,"1301356800000":4};
var res = Object.keys(data).map(itm => [itm, data[itm]]);

console.log(res); //[["1300752000000", 11],["1301356800000", 4]]

Object.keys()将从提供的对象返回可枚举的自有属性。因此,从该关键数组,我们可以使用Array.prototype.map函数将其转换为我们想要的数组。

答案 1 :(得分:1)

您可以使用Object.keyArray#map作为结果。

var data = { "1300752000000": 11, "1301356800000": 4 },
    array = Object.keys(data).map(function (k) {
        return [k, data[k]];
    });

console.log(array);