我有一个阵列事件,其格式如下: -
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" ];
我尝试过格式但没有成功。 如果有人能帮我解决这个问题。非常感谢。
答案 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);