Javascript 连接数组和整数数组的最佳方法

Javascript 连接数组和整数数组的最佳方法,javascript,arrays,ecmascript-6,Javascript,Arrays,Ecmascript 6,给定一个包含不同元素、数组和整数的数组,我想给出一个包含数组中所有整数的数组: x= [[ 1,2,3], 4, [5,6], 7, 8, [9]] pretty(x) -> [1,2,3,4,5,6,7,8,9]; 我确实设法完成了一个相当丑陋的减少,但我想知道是否有一些更漂亮的事情做它: x.reduce((t, e) => { if (!e instanceof Array) [e]; return t.concat(e); });

给定一个包含不同元素、数组和整数的数组,我想给出一个包含数组中所有整数的数组:

x= [[ 1,2,3], 4, [5,6], 7, 8, [9]]
pretty(x) -> [1,2,3,4,5,6,7,8,9];
我确实设法完成了一个相当丑陋的减少,但我想知道是否有一些更漂亮的事情做它:

x.reduce((t, e) => {
        if (!e instanceof Array) [e];
        return t.concat(e);
    });
有什么建议吗

谢谢

使用:

x=[[1,2,3],4,5,6,7,8,9]]
x=x.平坦(无穷大);
console.log(…x);
x=[[1,2,3]];
x=x.平坦(无穷大);

console.log(…x)“pretty”在这里是“flatte”的同义词
x.flat()
应该这样做。
!数组
语句的instanceof总是
false
,因为
创建了一个
布尔值
,它永远不会是
数组
。使用
!(e instanceof Array)
。请注意,此解决方案仅展平一层嵌套数组:
[[[1,2,3]]]。flat()
返回
[[1,2,3]]
谢谢您的评论,我更新了答案