展开多维数组(Array.prototype.flat)|展开多维数组(Array.prototype.flat) 的实现

Array.prototype.flat是指将多维数组展开为一维数组,例如
[0, [1], [[2]], [[[3]]]].flat() => [0, 1, 2, 3]
截止目前(2020年1月)为止,该方法还处于草稿阶段,也就是说不是所有版本的浏览器都支持flat方法,具体浏览器支持如下:

Browser version
Chrome 69
Safari 69
Firefox 62
Edge No
IE No
Opera 12
Android webview 69
Chrome for Android 62
Safari for IOS 12
Node.js 11.0.0
【展开多维数组(Array.prototype.flat)|展开多维数组(Array.prototype.flat) 的实现】具体实现如下:
function flatArra(arr){ const flatten = []; (function flat(input){ input.forEach(one => { if(Array.isArray(one)){ flat(one); } else { flatten.push(one); } }) })(arr) return flatten; }flatArra([0, [1], [[2]]]) // [0, 1, 2]

    推荐阅读