zoukankan      html  css  js  c++  java
  • js 数组去重

    这是一道常见的面试题,最近在做【搜索历史记录】功能也用到,开始用了 indexOf 方法,该方法在 ECMA5才有支持,对于 IE8- 就不支持了。

    我们可以自己写一个函数(Array对象的方法都是定义在原型对象上的),如下:

    <script type="text/javascript">
    Array.prototype.unique = function(){
        var length = this.length;
        if(length <= 1){
            return this;
        }
        if(!Array.prototype.indexOf){        
            Array.prototype.indexOf = function(item){
                var l = this.length, i = 0, r = -1;
                if(l <= 0){
             return -1;
           } for(; i < l; i++){ if(this[i] === item){ r = i; } } return r; } } var result = []; //去重数组 for(var i = 0; i < length; i++){ if(result.indexOf(this[i]) === -1){ result.push(this[i]); } } return result; } </script>
  • 相关阅读:
    HDOJ-1106
    二进制神题--一千个苹果问题
    HDOJ-2160
    HDOJ-2058
    HDOJ-2045
    HDOJ-2034
    HDOJ-2054
    HDOJ-2036
    F
    B
  • 原文地址:https://www.cnblogs.com/4littleProgrammer/p/4733254.html
Copyright © 2011-2022 走看看