二维数组转一维数组

创建一个数组
var arr = [['a', 'b', 'c'], ['d', 'e', 'f'], [1, 2, 3, 'a', 'f']]
 二维数组转一维数组
    function ArrayFn(arr) {
        var brr = []
        for (var i = 0; i < arr.length; i++) {
            brr = brr.concat(arr[i])
        }
        return brr
    }
    console.log(ArrayFn(arr))//['a', 'b', 'c', 'd', 'e', 'f', 1, 2, 3, 'a', 'f']
二维数组转一维数组并去重
    function ArrayFn2(arr) {
        var brr = []
        var crr = []
        for (var i = 0; i < arr.length; i++) {
            var crr = arr[i]
            for (var j = 0; j < crr.length; j++) {
                if (brr.indexOf(crr[j])==-1) {
                    brr.push(crr[j])
                }
            }
        }

        return brr
    }
    console.log(ArrayFn2(arr))//['a', 'b', 'c', 'd', 'e', 'f', 1, 2, 3]
 使用 reduce 方法将二维数组转换为一维数组的代码
const twoDArray = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];

const oneDArray = twoDArray.reduce((accumulator, currentValue) => accumulator.concat(currentValue), []);

console.log(oneDArray); 

在上述代码中,reduce 方法接受两个参数,一个回调函数和一个初始值。回调函数又接受四个参数:累加器 accumulator 、当前元素 currentValue 、当前元素的索引 currentIndex 和原数组 array 。这里我只使用了前两个参数,通过 accumulator.concat(currentValue) 将当前的子数组与累加器合并,最终将二维数组展平为一维数组。 

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风吹醒了梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值