`
axl234
  • 浏览: 260005 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

获取数组中最大元素的索引值(下标)

 
阅读更多

巧妙地利用apply方法来调用原生的Math.max与Math.min方法迅速求得结果。apply能让一个方法指定调用对象与传入参数, 并且传入参数是以数组形式组织的。恰恰现在有一个方法叫Math.max,调用对象为Math,与多个参数。

Array.max = function( array ) {

     return Math.max.apply( Math, array );

};

 

Array.min = function( array ) {

     return Math.min.apply( Math, array );

}

 

不过,把它们做成Math对象的静态方法,不能使用链式调用了。但这方法还能更精简一些,不要忘记,Math对象也是一个对象,我们用 对象的字面量来写,又可以省几个比特了。

Array.prototype.max = function() {

      return Math.max.apply({},this);

}

 

Array.prototype.min = function() {

      return Math.min.apply({},this);

}

 

[1,2,3].max()// => 3

[1,2,3].min()// => 1


方法1:

Array.prototype.max = function() {
      return Math.max.apply({},this);
}
Array.prototype.min = function() {
      return Math.min.apply({},this);
}
var x = new Array(31, 2322, 355, 88, 5, 6);
var y = x.max();
var index = jQuery.inArray(y, x)
alert(index);

 

方法2:

function array_max() {
    var i, max = this[0];
    for (i = 1; i < this.length; i++) {
        if (max < this[i]) max = this[i];
    }
    return max;
}
Array.prototype.max = array_max;
var x = new Array(31, 22, 35, 88, 5, 6);
var y = x.max();
var index = jQuery.inArray(y, x)
alert(index);

 

 

方法3:
(function () {
    var arr = new Array(1, 7, 346, 44, 32, 10);
    Array.prototype.max = function () {
        var max = this[0];
        var len = this.length;
        for (var i = 1; i < len; i++) {
            this.index = i;
            if (this[i] > max) {
                max = this[i];
                num = this.index;
            }
        }
        return num;
    }
    alert(arr.max());
})()

分享到:
评论

相关推荐

    javascript检查某个元素在数组中的索引值

    在现在代浏览器中判断一个元素在不在一个数组中,咱们可以用Array对象的indexOf()方法来取得这个元素在当前数组中的索引值,若索引值不等于-1,数组中就存在这个元素, 例如: var arr = [2,53,23,'test',9,'array'...

    快速查找数组中的某个元素并返回下标示例

    最近在写jquery的combobox插件时遇到效率问题,再加上jquery选择器的类帅选,导致效率很慢,采用以下方式二,可以轻松解决此问题

    Python基础教程:两种方法获取list中指定元素的索引.pdf

    Python基础教程:两种⽅法获取list中指定元素的索引 在平时开发过程中,经常遇到需要在数据中获取特定的元素的信息,如到达⽬的地最近的车站,橱窗⾥⾯最贵的物品等 等。 ⽅法⼀: 利⽤数组⾃⾝的特性 list.index...

    python 遍历列表提取下标和值的实例

    在Python中,不用while和for循环遍历列表的实例python实现在遍历列表时,直接对dict元素增加字段的方法Python 遍历列表里面序号和值的方法(三种)Python递归遍历列表及输出的实现方法python通过索引

    面向对象——索引器

     get//根据下标获取数组中该下标所对应的元素  {  //先判断下标是否越界  if (下标 &gt;= 私有数组元素的个数)  {  throw new IndexOutOfRangeException(“数组越界”)  }  return 私有数组[下标] } set//...

    PHP函数http_build_query使用详解

    如果在基础数组中使用了数字下标同时给出了 numeric_prefix 参数,此参数值将会作为基础数组中的数字下标元素的前缀。这是为了让 PHP 或其它 CGI 程序在稍后对数据进行解码时获取合法的变量名 http_build_query有...

    精通正则表达式基于.NET ASP PHP JSP JavaScript

    将数组元素连接为字符串.asp 构造制定字符串.asp 正向截取字符串.asp 正向查找字符串.asp 获取字符串长度.asp 第13章(/14/) Matches集合与Macth对象.asp ...

    《javaScrip开发技术大全》源代码

    • sample11.htm 使用delete运算符删除数组元素 • sample12.htm in运算符在对象中的使用 • sample13.htm in运算符在数组中的使用 • sample14.htm instanceof运算符 • sample15....

    Jquery 获取对象的几种方式介绍

    1、JQuery的核心的一些方法 each(callback) ‘就像循环 $(“Element”).length; ‘元素的个数,是个属性 $(“Element”).size(); ‘也是元素的个数,不过带括号是个方法 $(“Element... ‘元素2在元素1中的索引值是。 2

    JavaScript笔记

    |--arr.indexOf(x) 返回x在数组中的下标---经常用于判断元素是否存在。如返回-1,x则不在数组中 18.Number对象: |--x.toFixed(num):可把Number四舍五入为指定小数位数(num:0-20)的数字 |--x.toString():用于把...

    Excel VBA实用技巧大全 附书源码

    01015获取在Excel主窗口中一个窗口所能占有的最大高度和宽度 01016获取当前打印机名称 01017获取MicrosoftExcel剩余内存 01018获取MicrosoftExcel的总内存 01019获取计算机被Excel占用的内存 01020改变Excel窗口大小...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例216 数组元素的增加 273 实例217 数组元素的删除 274 实例218 生成随机字符串 275 实例219 序列化与反序列化 276 实例220 分数的常见运算 277 实例221 整数取值范围判断 279 10.2 Commons Math组件简介 280 实例...

    大名鼎鼎SWFUpload- Flash+JS 上传

    “If you return 'true' or do not return any value then the upload proceeds.”,从中可以看到既定的设计是当不返回任何值的时候应该等同于返回true,但是笔者在开发中发现必须明确返回值,否则上传进程将停止...

    Java范例开发大全 (源程序)

     实例37 数组元素类型不匹配异常(ArrayStoreException) 56  实例38 强制类型转换异常(ClassCastException) 56  实例39 索引越界异常(IndexOutOfBoundsException) 57  实例40 空指针异常...

    java范例开发大全(pdf&源码)

    实例37 数组元素类型不匹配异常(ArrayStoreException) 56 实例38 强制类型转换异常(ClassCastException) 56 实例39 索引越界异常(IndexOutOfBoundsException) 57 实例40 空指针异常(NullPointerException) ...

    java范例开发大全源代码

     实例37 数组元素类型不匹配异常(ArrayStoreException) 56  实例38 强制类型转换异常(ClassCastException) 56  实例39 索引越界异常(IndexOutOfBoundsException) 57  实例40 空指针异常...

    java范例开发大全

    实例37 数组元素类型不匹配异常(ArrayStoreException) 56 实例38 强制类型转换异常(ClassCastException) 56 实例39 索引越界异常(IndexOutOfBoundsException) 57 实例40 空指针异常(NullPointerException) ...

Global site tag (gtag.js) - Google Analytics