多维数组转一维数组+排序

// 已知如下数组
var arr = [
	[1, 2, 3],
	[4, 4, 5,  6, 6, 7],
	[8, 8, 9, 10, [11, 12, 13, [14, 15, 16, [17, 17], [18]]], 18, 19, 20],
];
// 编写一个程序将数组扁平化去除其中重复部分数据, 最终得到一个升序且不重复的数组

仔细读题其实就会发现这个题一点都不难,哈哈。
分为3个步骤
1 首先数组扁平化 es6的.flat方法
2 去重 Array.from(new Set())
3 排序 sort
方法多得很,我使用的都是es6直接封装好的方法,代码量比较少。
下面附上代码

let arr = [[1,3,4],[3,4,4,5,5,6,6,7],[7,8,9,9,9,1,23, [11,23,23,[12,24, [15]]]],10,11];
        console.log(arr);
        bianpinghua(arr);
        function bianpinghua(arr) {
            /* 1 数组扁平化 */
            let newArr = arr.flat(Infinity);
            /* 2 数组去重 */
            /* 3 数组排序 */
            // console.log(newArr);
            let quchongArr = Array.from(new Set(newArr)).sort(function(a, b) {return a - b});
            console.log(quchongArr);
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值