zoukankan      html  css  js  c++  java
  • javascript数组去重算法-----3

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>javascript数组去重算法-----3</title>
     6 </head>
     7 <body>
     8     <script>
     9     var arr = [1,1,2,2,3,2,2,3,3,1,1,4,4,5,6];
    10     function unique(array){
    11         var n = [];
    12         var a = {};
    13         for (var i = 0; i < array.length; i++) {
    14             if (!a[array[i]]) {
    15                 a[array[i]] = true;
    16                 n.push(array[i])
    17             };
    18         }
    19         return n
    20     }
    21 var cc    =unique(arr);
    22 console.log(cc)
    23 //利用对象的特性,存在的向设为true,并且添加的数组,否则不添加
    24     </script>
    25 </body>
    26 </html>

     扩展:1模块化,2返回一个对象,对象中包括已去重的数组和每个数字的多少;代码如下:

     1 <!doctype html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Document</title>
     6 </head>
     7 <body>
     8 <script>
     9     var a = [1,2,3,4,5,6,6,6,7,7,7,3,3,3];
    10 
    11     var uniqueModule = (function(){
    12         function unique(arr){
    13             var n = [];
    14             var hash = {};
    15             for(var i = 0;i<arr.length;i++){
    16                 if(!hash[arr[i]]){
    17                     hash[arr[i]] = 1;
    18                     n.push(arr[i]);
    19                 }else{
    20                     hash[arr[i]]++;
    21                 }
    22             }
    23             return {
    24                 n:n,
    25                 hash:hash
    26             };
    27         }
    28         return {
    29             unique:unique
    30         }
    31     }());
    32     console.log(uniqueModule.unique(a));
    33 </script>
    34 </body>
    35 </html>
    坚持下去就能成功
  • 相关阅读:
    mybatis返回map类型数据空值字段不显示(三种解决方法)
    linux各种资源查看
    ssh代理
    python 自定义ping编写
    python 备忘(协程,多进程)
    python 控制电源模块for循环写法
    XPath 语法
    python 自定义去掉特殊字符串
    ssh证书登陆vpc/并且反向代理
    cmder设置
  • 原文地址:https://www.cnblogs.com/suoking/p/4862744.html
Copyright © 2011-2022 走看看