es10小计flat和flatMap

1.flat()

数组扁平化,或者说数组降维!

通过

let arr = [1,[2,3],5,[4,[6,7]]];

let arr2 = arr.flat(); // 将数组降维为[1,2,3,5,4[6,7]]

简单说就是将数组中的数组拆解插入到当前它所在的位置

flat()可以带参数默认为1也就是说

let arr2 = arr.flat(); 等价为let arr2 = arr.flat(1);

参数的做用是用来识别降维几层的多维数组为2时次数组中包含的第三层子数组[6,7]也会解析出来为[1, 2, 3, 5, 4, 6, 7]

2.flatMap()

此方法和flat一样会降维数组 不过此方法只会降维一次 并可以对数组中的元素进行迭代通过return返回 (不会改变原数组 需要使用一个变量容器承接)

let arr = [1,[2,3],5,[4,[6,7]]];

let arr2 = arr.flatMap(item => {

  // 这里可以运算

  // return出去的数会生成一个新数组

  return item

}); // 将数组降维为[1,2,3,5,4[6,7]]
console.log(arr2, arr)
// [1, 2, 3, 5, 4, Array(2)]   [1,[2,3],5,[4,[6,7]]]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值