zoukankan      html  css  js  c++  java
  • JavaScript Array 对象扩展方法

    /** 删除数组中指定索引的数据 **/
    Array.prototype.deleteAt = function (index) {
        if (index < 0) {
            return this;
        }
        return this.slice(0, index).concat(this.slice(index + 1, this.length));
    }
    /** 数组洗牌 **/
    Array.prototype.random = function () {
        var tempArr = [], me = this, t;
        while (me.length > 0) {
            t = Math.floor(Math.random() * me.length);
            tempArr[tempArr.length] = me[t];
            me = me.deleteAt(t);
        }
        return tempArr;
    }
    Array.prototype.orderRandom = function () {
        return this.sort(function () {
            return Math.random() > 0.5 ? "-1" : "1";
        });
    }
    /** 数字数组排序 **/
    Array.prototype.sortNum = function (i) {
        if (!i) {
            i = 0;
        }
        if (i == 1) {
            return this.sort(function (a, b) {
                return b - a;
            });
        }
        return this.sort(function (a, b) {
            return a - b;
        });
    }
    /** 获取数字数组中的最大项 **/
    Array.prototype.getMax = function () {
        return this.sortNum(1)[0];
    }
    /** 获取数字数组中的最小项 **/
    Array.prototype.getMin = function () {
        return this.sortNum(0)[0];
    }
    /** 数组第一次出现指定元素的位置 **/
    Array.prototype.indexOf = function (o) {
        for (var i = 0; i < this.length; i++) {
            if (this[i] == o) {
                return i;
            }
        }
        return -1;
    }
    /** 去除数组中的重复项 **/
    Array.prototype.arrUnique = function () {
        var reset = [], done = {};
        for (var i = 0; i < this.length; i++) {
            var temp = this[i];
            if (!done[temp]) {
                done[temp] = true;
                reset.push(temp);
            }
        }
        return reset;
    }
    
  • 相关阅读:
    搭建Jumpserver
    支付功能流程图
    我是如何招聘程序员的
    从问题域看hadoop的各种技术
    转一篇做BI项目的好文
    关于数据倾斜的问题
    技能的十一个级别
    企业计划体系的变迁:从ERP到APS再到SCP
    别浪费自己的高学历
    一个CTO谈自己的技术架构体系
  • 原文地址:https://www.cnblogs.com/sntetwt/p/4208313.html
Copyright © 2011-2022 走看看