代码库
  • 代码库
  • 文章
  • 模板
数组 算法

js 指定深度来扁平化嵌套的数组

传入数组和深度参数,返回层级为该深度的扁平化后的数组

最后更新2021/01/31 66
const flatten = (arr, depth = 1) =>
  arr.reduce((a, v) => a.concat(depth > 1 && Array.isArray(v) ? flatten(v, depth - 1) : v), []);

// 例子
flatten([1, [2], 3, 4]); // [1, 2, 3, 4]
flatten([1, [2, [3, [4, 5], 6], 7], 8], 2); // [1, 2, 3, [4, 5], 6, 7, 8]

 

相关代码

js 返回页面上一页

js 将字符串转换为Pascal大小写

js 克隆对象(方法之一)

js 随机返回是或否,50%的概率

js 平滑滚动到指定元素区域

js 前端侧http转https

js 判断字符串是否只包含ascii码

js 悬停动态增/删 css类名

js 判断字符串是否为十六进制数字

js 数组按条件分组

热门代码

01
js 捕获函数异常自定义处理
57
02
js 将数组的元素从当前位置移动到另一个位置
1067
03
js 在指定范围生成随机小数
845
04
js 判断字符串是否为十六进制数字
896
05
js 判断字符串是否包含大写字母
805

最新代码

01
js 获取当前页面的滚动位置
02
js 平滑滚动到指定元素区域
03
js 平滑滚动到浏览器页面的顶部
04
js 检查浏览器当前标签页是否激活状态
05
js 前端侧http转https
关于我们 联系我们 版权声明

© 2020 - UNeedCode.com. All Rights Reserved.粤ICP备2020110423号-1