jQuery.inArray
jQuery.inArray( value, array [, fromIndex ] )返回: Number
描述: 在数组中查找指定值并返回它的索引(如果没有找到,则返回-1)。
-
添加的版本: 1.2jQuery.inArray( value, array [, fromIndex ] )
- value 类型: Anything 要查找的值。
- array 类型: Array 一个数组,通过它来查找。
- fromIndex 类型: Number 数组索引值,表示从哪里在开始查找。默认值是0,这将查找整个数组。
$.inArray()
方法类似于JavaScript的原生.indexOf()
方法,没有找到匹配元素时它返回-1。如果数组第一个元素匹配value
(参数)
,那么$.inArray()
返回0。
因为JavaScript将0视为false(即 0 == false, 但是 0 !== false),要检查在array
中是否存在value
,
你需要检查它是否不等于(或大于)-1。
值之间的比较是严格比较(即,===或!==比较)。下面这段代码返回 -1
(没有找到)
, 因为字符串数组中不可能找到一个数字:
$.inArray( 5 + 5, [ "8", "9", "10", 10 + "" ] );
例子:
<!DOCTYPE html> <html> <head> <style> div { color:blue; } span { color:red; } </style> <script src="http://code.jquery.com/jquery-latest.js"></script> </head> <body> <div>"John" found at <span></span></div> <div>4 found at <span></span></div> <div>"Karl" not found, so <span></span></div> <div>"Pete" is in the array, but not at or after index 2, so <span></span></div> <script>var arr = [ 4, "Pete", 8, "John" ]; var $spans = $("span"); $spans.eq(0).text(jQuery.inArray("John", arr)); $spans.eq(1).text(jQuery.inArray(4, arr)); $spans.eq(2).text(jQuery.inArray("Karl", arr)); $spans.eq(3).text(jQuery.inArray("Pete", arr, 2)); </script> </body> </html>
结果:
"John" found at 3 4 found at 0 "Karl" not found, so -1 "Pete" is in the array, but not at or after index 2, so -1
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。