数组去重
hash法数组去重
<script>
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 2, 3, 4, 6, 6, 5, 4, 3, 5, 7, 8, 7, 6, 4, 6];
function fn() {
var temp = {},
newArr = [],
len = arr.length;
for (var i = 0; i < len; i++) {
if (!temp[arr[i]]) {
temp[arr[i]] = "value";
newArr.push(arr[i]);
}
}
return newArr;
}
console.log(fn(arr));
</script>
<script>
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 2, 3, 4, 6, 6, 5, 4, 3, 5, 7, 8, 7, 6, 4, 6];
var obj = {};
var newArr = [];
arr.forEach(function(item) {
obj[[item]] = "value";
})
for (var j in obj) {
newArr.push(j);
}
document.write(newArr);
</script>
indexOf()方法去重
<script>
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 2, 3, 4, 6, 6, 5, 4, 3, 5, 7, 8, 7, 6, 4, 6];
function fn(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i])
}
}
return newArr
}
console.log(fn(arr));
</script>