这几天一直在更新一些排序啊,去重方面的内容,
是因为这些说是技巧,其实都是JS的基本功,
不管是新人,还是老鸟,都要加强加强再加强。
因为经常有种情况,就是别人写的框架、库,
打开源文件你看不懂,
为什么呢?
就因为你基本功不好,不能理解它的各种方法的综合运用。
那今天我们就一起来学习下JS的去除重复项,
说是一起学习,真的就是一起学习,
我给你们讲,
首先我得自己学会,,
先上代码哈:
function isCheckArr(arr){
var newArr = [];
for(var i=0;i<arr.length;i++){
if( newArr.indexOf( arr[i] ) == -1 ){
newArr.push( arr[i] )
}
}
return newArr;
}
var arr = [1,2,3,1,2,3,4];
isCheckArr(arr);//[1, 2, 3, 4]
这个去重的代码,是最简单的,
比前二天的判断是否有重复啊,,重复几次啊都简单。。
你看它里面就是一个indexOf,这个方法是在某个字符串中查找指定的字符串,
如果没找着就返回-1。
那这个isCheckArr的意思就是,
1,新建一个空数组;
2,通过for循环,在newArr里查找arr数组的每一项,
3,如果arr的每一项都不在newArr里,那说明它不是重复的,
4,把这个不重复的项,push加入newArr
最后返回的就是没有重复项的新数组啦。。
怎么样,这个简单吧,
就是个for循环,然后indexOf查找而已,,
查看以下文章: