1.双层循环,外层循环元素,内层循环时比较值;如果有相同的值则跳过,不相同则push进数组// formatConcatArr(array)==[ 1, 23, 2, 3 ]
formatConcatArr(array)=={ {formatConcatArr([1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 2, 3, 3, 2, 2, 1, 23, 1, 23, 2, 3, 2, 3, 2, 3])}}formatConcatArr (array) {
let arr = array
let result = []
let i
let j
let len = arr.length
for (i = 0; i < len; i++) {
for (j = i + 1; j < len; j++) {
if (arr[i] === arr[j]) {
j = ++i
}
}
result.push(arr[i])
}
return result
}
2.利用splice直接在原数组进行操作
双层循环,外层循环元素,内层循环时比较值;值相同时,则删去这个值
注意点:删除元素之后,需要将数组的长度也减1.(优点:简单易懂;缺点:占用内存高,速度慢)