javascript - 将 Javascript 对象转换为具有两个值的数组数组

标签 javascript arrays highcharts

目前,我的脚本生成一个格式如下的对象:

{name: numerical value, name: numerical value}

我正在使用的图表库 Highcharts 要求数据位于具有两个值的数组数组中,例如:

[ ["name", "numerical value"], ["name", "numerical value"], ["name", "numerical value"] ]

如何将 JavaScript 对象转换为数组中的数组?

最佳答案

循环对象的键,为每个键创建一对新键:

var obj = { name: 3, name2: 4 /* etc. */ };
var data = [];

for ( f in obj )
{
  var pair = [ f, obj[f] ];
  data.push(pair);
}

或者,该循环的简洁版本:

for ( f in obj )
{
  data.push( [ f, obj[f] ] );
}

var obj = { name: 3, name2: 4, name3: 72 };
var data = [];

for ( f in obj )
{
  data.push( [ f, obj[f] ] );
}

console.log( JSON.stringify(data) );

关于javascript - 将 Javascript 对象转换为具有两个值的数组数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27966020/

相关文章:

java - 在数组中查找特定的 char 元素

javascript - Highstocks 图表中的相对时间

javascript - Angular ng-submit 不起作用

javascript - 匹配谷歌日历事件提要日期的正则表达式

arrays - MIPS addi 指令到数组基数

javascript - 禁用双指缩放以放大 highstock/highcharts

javascript - 取消选择并选择事件

javascript - 在新行上拆分,除非在双引号内

javascript - 如何使用 Javascript 验证文本字段不接受 0 作为第一位数字和整个数字

c - 调整二维动态分配表大小时出现段错误