核心代码:函数norepeat + for循环 + if条件语句 + splice知识备查
<script>
var arr = new Array(1,3,1,6,6,4) ; //一个(构造函数)创建的数组
// var arr = [1,3,1,6,6,4]; //一个(字面量)创建的数组
function norepeat(arr){
for(var i=0 ;i<arr.length;i++){ //for循环选择数组arr的所有元素
for(var j=i+1 ;j<arr.length;j++){ //for循环选择数组arr的i+1起之后的所有元素
if(arr[i]== arr[j]) { //所有元素比较并判断相等元素
arr.splice(j,1);
//保留第1个元素,删除与之相等的第2个元素,当与第一个重复n次,则arr.splice(j,n);
}
}
}
return arr; //[1,3,6,4]---新数组
}
console.log(norepeat(arr));
// 备查知识:
// ======方法:splice=====
// 功能:删除并替换;
// 参数:
// 参数1:选择删除的起点(包括);
// 参数2:删除的个数;
// 参数3:在删除位置新插入的数据1;
// 参数2:在删除位置新插入的数据2;
// ...
// 参数n:在删除位置新插入的数据n;
//** 注意:当参数2为0时,参数3插入起点(参数1)原位置,起点后移。
// 返回值:返回删除的数组;
// 是否改变原数组:是。
// 字面量方式创建的数组,length=6;
// var arr = [ "a","b","c","d","e","f"];
// console.log(arr);
// var res = arr.splice(2,3,"hello");
// console.log(res); //["c", "d", "e"]---返回删除的数组
// console.log(arr); //["a", "b", "hello", "f"]---改变后的新数组
</script>