方法一 filter过滤器

利用数组中的filter方法.filter()接收的回调函数,其实可以有多个参数。通常我们仅使用第一个参数element,表示Array的某个元素。回调函数还可以接收另外两个参数,表示元素的位置index和数组本身self.

filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。

filter去除重复元素依靠的是indexOf总是返回第一个元素的位置,后续的重复元素位置与indexOf返回的位置不相等,因此被filter滤掉了。

 var arr =['apple','strawberry','banana','pear','apple','orange','orange','strawberry',1,2,2,1];
  var r = arr.filter(function(element,index,self){
    return self.indexOf(element) === index;
 });
   console.log( r );

js数组去重 --filter-LMLPHP

未完待续。。。。。

10-03 15:47