Array indexOf and lastIndexOf method
2013-05-09 22:56
232 查看
参见https://developer.mozilla.org/en-US/docs/JavaScript/Reference/global_objects/array/indexof
array.indexOf(searchElement[, fromIndex])
接受一个搜索值(searchElement),将其与数组(array)中的每个元素比较。如果找到该值,返回表示该数组元素的一个索引。如果没有找到,返回-1。
由于IE8不支持indexof,Mozilla针对这一函数的解决方案:
array.lastIndexOf(searchElement[, fromIndex]);
array.indexOf(searchElement[, fromIndex])
接受一个搜索值(searchElement),将其与数组(array)中的每个元素比较。如果找到该值,返回表示该数组元素的一个索引。如果没有找到,返回-1。
由于IE8不支持indexof,Mozilla针对这一函数的解决方案:
if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement , fromIndex ) { "use strict"; if (this == null) { throw new TypeError(); } var t = Object(this); var len = t.length >>> 0; if (len === 0) { return -1; } var n = 0; if (arguments.length > 1) { n = Number(arguments[1]); if (n != n) { // shortcut for verifying if it's NaN n = 0; } else if (n != 0 && n != Infinity && n != -Infinity) { n = (n > 0 || -1) * Math.floor(Math.abs(n)); } } if (n >= len) { return -1; } var k = n >= 0 ? n : Math.max(len - Math.abs(n), 0); for (; k < len; k++) { if (k in t && t[k] === searchElement) { return k; } } return -1; } } var array = [2, 5, 9]; var index = array.indexOf(5); // index is assigned 0 alert(index); //index = array.indexOf(7); // index is assigned -1
array.lastIndexOf(searchElement[, fromIndex]);
if (!Array.prototype.lastIndexOf) { Array.prototype.lastIndexOf = function(searchElement /*, fromIndex*/) { "use strict"; if (this == null) throw new TypeError(); var t = Object(this); var len = t.length >>> 0; if (len === 0) return -1; var n = len; if (arguments.length > 1) { n = Number(arguments[1]); if (n != n) n = 0; else if (n != 0 && n != (1 / 0) && n != -(1 / 0)) n = (n > 0 || -1) * Math.floor(Math.abs(n)); } var k = n >= 0 ? Math.min(n, len - 1) : len - Math.abs(n); for (; k >= 0; k--) { if (k in t && t[k] === searchElement) return k; } return -1; }; }
相关文章推荐
- Distinguish between index of a decimal number and integer inside an array in Ruby?
- ES5中,Array新增API(下)之reduceRight、every、indexOf、lastIndexOf
- lastIndexOf 方法 (Array) (JavaScript)
- JavaScript服务器端高级编程(Array.indexOf()和lastIndexOf()方法)
- indexOf() lastIndexOf() 与 jQuery.inArray()
- underscore.js _.lastIndexOf[Array]
- [LeetCode] 34. Search for a Range 搜索一个范围(Find First and Last Position of Element in Sorted Array)
- ES5中Array新增加的API接口 forEach map filter some every indexOf lastIndexOf reduce reduceRight
- Teddy's Aspect Weaver Version 0.3 with Great Updating and Fixing, Especially the Implementing of Getting Runtime Method Context Info and Method Arguments in MSIL Level
- Method and apparatus for training a memory signal via an error signal of a memory
- Leetcode_length-of-last-word (updated c++ and python version)
- 为JS扩展Array.prototype.indexOf引发的问题探讨及解决
- RDLC/RDL report: Index was outside the bounds of the array
- 关于java.lang.String中的public int lastIndexOf(String,int)
- php 类似 js indexof与lastindexof 的方法 : strpos() strrpos()
- JavaScript(JS)的indexOf和lastIndexOf函数全解析
- 保存自定义对象的数组 save and restore an array of custom objects
- Given a int array, please find the sub array wich has maximum sum, return the index, length and sum
- oracle日期时间段查询遇到问题to_date ora-01847 day of month must be between 1 and last day of month
- 关于arraylist类中indexof方法与lastindexof方法的使用