第一种
for(var i = 0 ;i<arr.length;i++){
console.log(`第${i+1}次比较`);
for(var j = i+1;j<arr.length;j++){
console.log('i=====',arr[i],'j=====',arr[j]);
if(arr[i]===arr[j]){
arr.splice(j,1); // 根据索引 删除一个
// 回退到当前的删除元素的位置
j--
}
}
}
第二种
var res = []; // 目的:只要保证数组中元素式不重复的
for (var i = 0; i < arr.length; i++) {
// 判断 res 中是否存在 arr[i]
if (res.indexOf(arr[i]) === -1) {
// 如果不存在 将 arr[i] 添加到 res 中
res.push(arr[i])
}
}
第三种
var res = []; // 不重复的元素数组
var flag = false;// 表示 res 中是否存在 arr 数组中元素 true 存在 false 不存在
for (var i = 0; i < arr.length; i++) {
// 验证res 中是否存在 arr[i]
for (var j = 0; j < res.length; j++) {
if(arr[i]===res[j]){
// 存在。
flag = true;
break
}else{
// 不存在
flag = false;
}
}
// 数据处理
// 如果不存在;将arr[i] 添加到res 中
if(!flag){
res.push(arr[i])
}
}