提问人:Pooja Shingala 提问时间:9/21/2022 最后编辑:Rory McCrossanPooja Shingala 更新时间:9/21/2022 访问量:49
在 javascript 中从 n 维数组中提取数字 [duplicate]
Extract numbers from a n-dimensional array in javascript [duplicate]
问:
输入数组:
输出数组:[1, 2, [3, 4, [5, 6, [7, 8, [9]]]], 10]
[1,2,3,4,5,6,7,8, 9, 10]
有没有办法在不使用多个循环的情况下获取输出数组?
答:
7赞
Andy
9/21/2022
#1
您可以向 flat
添加一个参数,以从许多嵌套数组中获取所有数字。infinity
const data = [1, 2, [3, 4, [5, 6, [7, 8, [9]]]], 10];
const out = data.flat(Infinity);
console.log(out);
1赞
KITISH
9/21/2022
#2
console.log([1, 2, [3, 4, [5, 6, [7, 8, [9]]]], 10].flat(Infinity));
使用“flat”方法展平数组。或者您也可以使用下划线模块方法。
评论
const flat=v=>(!Array.isArray(v))?v:v.reduce((a,v)=>a.concat(flat(v)), []);