function flat(arr){
arr = arr.flat(Infinity);
let arr1=[]
for(let i=0;i<arr.length;i++){
if(arr1.indexOf(arr[i])!=-1){
arr1.push(arr[i])
}
}
arr1.sort();
}
如上代码,是对数组进行扁平 去重排序的代码;这里面有两个问题
- 新创建的arr1为空,所以不能用arr1.indexOf(arr[i])!=-1拍判断,应该用arr1.indexOf(arr[i])<0来进行判断
- 数组默认的sort会存在问题 需要传入参数 比如 5 和22 两个数进行默认排序的时候22 比 5 小,所以需要传入两个参数