jquery - 数组函数需要帮助

时间:2014-05-13 10:21:53

标签: javascript jquery highcharts

我有这样的数组。

[{"label":"2013-12-01","value":"2372"},{"label":"2014-01-01","value":"2458"},{"label":"2014-02-01","value":"1636"},{"label":"2014-03-01","value":"2527"},{"label":"2014-04-01","value":"2129"},{"label":"2014-05-01","value":"149"}]

我正在使用highcharts创建折线图。

折线图的数据格式为

[["2013-12-01",2372],["2014-01-01",2458],["2014-02-01",1636],["2014-03-01",2527],["2014-04-01",2129],["2014-05-01",149]]

我不知道该怎么做。

实际上结果来自ajax结果。

我在Object Object得到了结果,并使用JSON.stringify对其进行了转换。但转换后我得到了标签和价值。

有人帮助我以图表预期格式获取数据。

提前致谢。

3 个答案:

答案 0 :(得分:3)

您可以映射当前数组并将其中的每个标签返回到新数组等

var new_arr = $.map(arr, function(itm) { return [itm.label, itm.value]; });

答案 1 :(得分:1)

您可以使用JavaScript的原生Array.map()功能,类似于:

var y = x.map(function(item){
    return [item.label, item.value];
})

DEMO - 使用Array.map


答案 2 :(得分:0)

您可以使用以下代码

var orgArr = [{"label":"2013-12-01","value":"2372"},{"label":"2014-01-01","value":"2458"},  {"label":"2014-02-01","value":"1636"},{"label":"2014-03-01","value":"2527"},{"label":"2014-04-01","value":"2129"},{"label":"2014-05-01","value":"149"}]
var newArr = []
$.each(orgArr, function( index, value ) {
  newArr.push([value.label, value.value]);
});
console.log(newArr)
上述代码

Fiddle