主要是考ES5、ES6关于数组的使用问题
let a = [1,[1,2],[1,2,[3]]],
c = [1,[3,4,[124,123123,5123]],31,[123,41],[31,41,321,123]]
let arr_Fun =arr=>{
return [...new Set(arr.join().split(','))].sort((a,b)=>{return a-b}).map(Number)
//return [...new Set(arr.toString().split(','))].sort((a,b)=>{return a-b}).map(Number)
}
console.log(arr_Fun(a))
console.log(arr_Fun(c))
讲解:
1、主要使用的是arr_Fun的函数,另外 arr=>{}是用的箭头函数
2、arr.toString().split(',')或者arr.join().split(',')是为了让把数组扁平化,先把数组组成字符串,然后split为数组
3、new Set(...)是利用Set的特性,去除重复的数字(此时数组内都是字符串),返回的是Set类型集合
4、[...new Set]是得到一个数组,...是扩展运算符
5、sort是排序,return a-b。-1的话,就小的排前,大的放后。
数组扁平化与排序
本文介绍了一种使用JavaScript将多维数组扁平化的方法,并去除重复元素后进行排序。通过将数组转换为字符串再分割的方式实现扁平化,利用Set确保元素唯一性。
619

被折叠的 条评论
为什么被折叠?



