如何消除一个数组里面重复的元素? (用Javescript)
var arr=[1,2,3,3,4,4,5,5,6,1,9,3,25,4]
方法一:
function arrayRepeat(){
var arr=[1,2,3,3,4,4,5,5,6,1,9,3,25,4];
var noRepeatArray = [];
for(var i = 0; i < arr.length; i++){
if(noRepeatArray.indexOf(arr[i]) === -1){
noRepeatArray.push(arr[i]);
}
}
return noRepeatArray;
}
方法二:
var arr1 = [1, 2, 3, 3, 4, 4, 5, 5, 6, 1, 9, 3, 25, 4];
var arr2 = [];
var len = arr1.length;
for(var i = 0;i < len; i++) {
if(arr2.indexOf(arr1[i]) < 0) {
arr2.push(arr1[i]);
}
}
console.log(arr2);
在上述两种方法中,都用到了indexOf(),push()。
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
注释:indexOf() 方法对大小写敏感!
注释:如果要检索的字符串值没有出现,则该方法返回 -1。
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
注释:push()方法会改变数组的长度。