格式化数组

时间:2016-10-05 06:29:37

标签: javascript arrays format

我有一个阵列事件,其格式如下: -

var incident = 
[ [1, ['a', 'b', 'c'] ],
  [2, ['d', 'e'] ],
  [3, ['f', 'g', 'h'] ],
  [4, ['i'] ]
];

现在我想从这个数组中提取数据并将其格式化为这样。

data = [ ["a", "b", "c"], ["d", "e"], ["f", "g", "h"], "i" ];

我尝试过格式但没有成功。 如果有人能帮我解决这个问题。非常感谢。

1 个答案:

答案 0 :(得分:4)

您可以使用Array#map并检查元素的长度是否为单个元素,否则返回该数组。

var nums = ['100','300','400','60','40'];

nums.reduceRight(function(a,b){return Number(a)+Number(b);})
var incident = [[1, ['a', 'b', 'c']], [2, ['d', 'e']], [3, ['f', 'g', 'h']], [4, ['i']]],
    data = incident.map(function (a) {
        return a[1].length === 1 ? a[1][0] : a[1];
    });

console.log(data);