2 数组去重
描述
请补全JavaScript代码,要求去除数组参数中的重复数字项并返回该数组。
注意:1. 数组元素仅包含数字
示例1
输入:_deleteRepeat([-1,1,2,2])
输出:[-1,1,2]
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8>
</head>
<body>
<script type="text/javascript">
// 方法一 使用indexOf + splice找出重复元素并删除
// const _deleteRepeat = array => {
// // 遍历整个数组
// for(let i=0;i<array.length;i++){
// // 如果当前元素在后面可以找到,那就删除当前元素
// if(array.indexOf(array[i], i+1)!==-1){
// array.splice(i, 1)
// }
// }
// return array
// }
// 方法二 使用set去重
// const _deleteRepeat = array => {
// // 直接放到set理去重,再转为数组
// array = Array.from(new Set(array));
// return array
// }
// 方法三 双重for循环
// const _deleteRepeat = array => {
// // 双重for循环遍历数组中的元素
// for(let i=0;i<array.length;i++){
// for(let j=i+1;j<array.length;j++){
// // 如果后面有重复的元素,那就删除,删除之后后面的
// //元素会补上,为了防止补上的元素是重复的元素,因此需要将j--
// if(array[i]===array[j]){
// array.splice(j, 1)
// j--
// }
// }
// }
// return array
// }
// 方法四 使用includes
const _deleteRepeat = array => {
// 补全代码
let arr = []
for(let i of array){
if(!arr.includes(i))
arr.push(i)
}
return arr
}
console.log(_deleteRepeat([-1,1,2,2]))
</script>
</body>
</html>