<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>数组去重</title>
</head>
<body>
<script>
//数组去重需要新建一个空对象和空数组,遍历要去重的数组,新建对象属性存在则表示
//这个元素是存在的需要去除
var arr = [1,2,3,4,4,3,5,2,7,8,"2"];
var obj={};
var arr1 = [];
var arr2 = [];
for (var i = 0; i < arr.length; i++) {
if(!obj[arr[i]]){
obj[arr[i]]=1;
arr1.push(arr[i]);
}
}
console.log(arr1,78);//[1,2,3,4,5,7,8]把字符串"2"过滤掉了
//数组去重需要考虑元素类型
for (var i = 0; i < arr.length; i++) {
if(!obj[typeof(arr[i])+arr[i]]){
obj[typeof(arr[i])+arr[i]]=1;
arr2.push(arr[i]);
}
}
console.log(arr2,78);//[1,2,3,4,5,7,8,"2"]
</script>
</body>
</html>