共计 787 个字符,预计需要花费 2 分钟才能阅读完成。
一。数组扁平化
概念: 是指将一个多维数组变为一个一维数组。
var arr=[1,[2,[3,[4,5]]],6]; | |
==>[1, 2, 3, 4, 5, 6] | |
办法一:arr.flat(Infinity); | |
办法二:JSON.parse("["+JSON.stringify(arr).replace(/\[|]/g,"")+"]") | |
办法三:const arrCon=[]; | |
const fn=arr=>{for(let i=0;i<arr.length;i++){if(Array.isArray(arr[i])){fn(arr[i]); | |
} | |
else{arrCon.push(arr[i]); | |
}; | |
}; | |
fn(arr); |
有不懂 flat() 小伙伴们能够点击 flat()
二。数组去重
var arr=[1,1,2,2,4,4,null,null]; | |
==>[1,2,4,null] | |
办法一:Arry.from(new Set(arr)); | |
办法二: 双层 for 循环 | |
function FFOR(arr){for(var i=0;i<arr.length;i++){for(var j=i+1;j<arr.length;j++){if(arr[i]===arr[j]){arr.splice(j,1) | |
j-- | |
} | |
} | |
} | |
return arr; | |
}; | |
办法三:filter()+indexOf() | |
function ffor(arr){return arr.filter(item,index,arr){return arr.indexOf(item,0)===index; | |
} | |
}; | |
办法四:indexOf | |
function FFOR(arr){const arrCon=[]; | |
for(let i=0;i<arr.length;i++){if(arrCon.indexOf(arr[i])===-1){arrCon.push(arr[i]) | |
} | |
} | |
return arrCon | |
} |
正文完
发表至: javascript
2021-01-27