编写一个方法,去掉数组中重复元素

//排序后相邻去除法
  arr=[1,2,5,1,3,7,9,5];
   function unique(arr){
       arr.sort();
       var _arr=[arr[0]];//结果数组
          for(var i=0;i<arr.length;i++){
            if(arr[i]!=_arr[_arr.length-1]){
               _arr.push(arr[i]);
                }
          }

   return _arr;

   }
   unique(arr);
  
//遍历数组法
  if(Array.prototype.indexOf===-1){
      Array.prototype.indexOf=function(value,fromi){
          fromi===undefined&&(fromi=0);
             for(var i=fromi;i<this.length;i++){
             if(this[i]=value){
                  return true;
             }else{
                  return -1;
              }
        }
      }
  }
   arr=[1,2,5,1,3,7,9,5]
   function unique(arr){
       var _arr=[];//新建临时数组
       for(var i=0;i<arr.length;i++){
           if(_arr.indexOf(arr[i])==-1){//如果arr的第i已经保存进了_arr,那么跳过,
        //否则把当前项push到临时数组里面(没有在_arr中出现过(-1))
                 _arr.push(arr[i]);
           }
       }
     return _arr;

   }
   console.log(String(unique(arr)));

*先解决ie8的兼容问题

时间: 2024-11-02 08:25:20

编写一个方法,去掉数组中重复元素的相关文章

用正则去掉数组中重复的元素

<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script> //去掉数组中重复的元素 //此题最主要就是对数组进行排序拼接,在进行replace的替换,在进行分割,将其return到外部 //随机生成随机数压入空数组arr中 for(var i=0,arr

去掉数组中重复的数字

冒泡排序语法: for (int i = 0; i < 数组长度 - 1; i++) { for (int j = 0; j < 数组长度 - i - 1; j++) { if (数组名[j] < 数组名[j + 1]) { int empty = 数组名[j]; 数组名[j] = 数组名[j + 1]; 数组名[j + 1] = empty; } } } 上面这个语法是降序排序,如果想升序的话就把if(数组名[j]<数组名[j=1])里面的小于号“<”改成大于号“>”

javascript如何去掉数组中重复的值

javascript如何去掉数组中重复的值: 数组是用来组织数据的,有时候里面的数据是重复的,下面就介绍一下如何从数组中删除重复的内容. 代码实例如下: var theArray=[1,2,3,4,5,6,4,3,10]; function unique(data){ var data=data||[]; var a={}; for(var i=0;i<data.length;i++){ var v=data[i]; if(typeof(a[v])=='undefined'){ a[v]=1;

去除数组中重复元素

问题 统计一个一维数组中的各个元素的个数,然后删除多出来的重复元素,并输出结果. 例如:[1,2,2,2,3,3,3,3,3]-->[1,2,3] 解决思路 将重复元素的列表中的重复元素进行统计,并将统计结果放在dictionary中,key为元素,value为该元素的个数 然后通过for获取key,得到一个新的列表,就是没有重复元素的列表 解决(Python) #!/usr/bin/env python #coding:utf-8 def count_element(one_list): el

统计数组中重复元素个数

/** * 循环统计数组或集合中的重复元素个数 * @param args */ public static void main(String[] args) { Map<String, Integer> map = new HashMap<String, Integer>(); String[] ss = {"白","黑","绿","白"}; for (int i = 0; i < ss.len

几种去除数组中重复元素的方法

工作中遇到的一个问题,就是去除数组中重复的元素,记录一下几种有效的方法: 第一种思路:遍历要删除的数组arr, 把元素分别放入另一个数组tmp中,在判断该元素在arr中不存在才允许放入tmp中. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>去除数组重复项</title> </head> &

写一个函数实现数组中的元素随机乱序排序

//原生JS写一个函数实现一个shuffle方法,将数组中的元素随机乱序排序 var shuffle = function(arr){ var len,t,rand; for(var i =0;len = arr.length,i<len;i++){ rand = parseInt(Math.random()*len);//parseInt(Math.random()*(len-1-0)+1);或者rand = Math.floor(Math.random()*(len-1-0)+1);即Mat

利用JavaScript去掉数组中重复项

利用JavaScript的object的特性,我们可以非常容易的实现将一个数组的重复项去掉. object的特性是:key一定是唯一的. 把数组重复项去掉: 1 将数组转换成一个object对象,数组的值作为object对象的 key 因为key是唯一的,碰到重复的数组值的时候,object不会添加key 2 将object对象转换成数组,key为数组的值. 在之前的重复数组,每一个值实际上对应object只有一个key,这样在还原到数组的时候,重复值就去掉了 1 /*用object的特性去掉数

Js中去除数组中重复元素的4种方法

今天工作遇到此问题,尝试多个方法不尽人意,故此写个博客来总结一下如何在js中去除重复元素. 方法1:         Array.prototype.method1 = function(){             var arr[];    //定义一个临时数组             for(var i = 0; i < this.length; i++){    //循环遍历当前数组                 //判断当前数组下标为i的元素是否已经保存到临时数组