JS-inArray检查数组中是否存在某个值
2013-03-15 13:52
176 查看
我们经常会用到这个一样逻辑,判断一个字符串或者数字是否在数组内,很多程序语言都有这样一样专门的函数,比如PHP的in_array()。那么JS有木有呢,很遗憾,JS木有这样的函数,于是想到伟大的JQ是否封装了这个函数,找到了API,JQ的确封装了这个函数jQuery.inArray( value, array ) 搜索数组中指定值并返回它的索引(如果没有找到则返回-1)。value要搜索的值。array一个数组,通过它来搜索。
当然,处于学习,自己也去写了这样的函数,有2种代码可以实现,第一种:
第二种:
三个参数,在array中查找needle,bool为布尔量,如果为true则返回needle在array中的位置,那么就会有人问,到底用哪个比较好,在性能方便,如果array数组不是很大,2则无太大的差别,如果array数组很大,则第二种速度更快一点,for..in的遍历的确比for要慢很多
当然,处于学习,自己也去写了这样的函数,有2种代码可以实现,第一种:
function inArray1(needle,array,bool){ if(typeof needle=="string"||typeof needle=="number"){ for(var i in array){ if(needle===array[i]){ if(bool){ return i; } return true; } } return false; } }
第二种:
function inArray2(needle,array,bool){ if(typeof needle=="string"||typeof needle=="number"){ var len=array.length; for(var i=0;i<len;i++){ if(needle===array[i]){ if(bool){ return i; } return true; } } return false; } }
三个参数,在array中查找needle,bool为布尔量,如果为true则返回needle在array中的位置,那么就会有人问,到底用哪个比较好,在性能方便,如果array数组不是很大,2则无太大的差别,如果array数组很大,则第二种速度更快一点,for..in的遍历的确比for要慢很多
相关文章推荐
- JS-inArray检查数组中是否存在某个值
- JS-inArray检查数组中是否存在某个值
- inArray检查数组中是否存在某个值
- 面试题:检查一个数组里是否存在m个数的和等于某个值
- php 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等
- PHP 检查给定的键名或索引是否存在于数组中 array_key_exists 函数
- js判断一个对象数组里是否存在某个元素
- js检查元素是否包括在数组中
- JS检查变量是否存在
- 浅谈PHP检查数组中是否存在某个值 in_array 函数
- js使用for循环查询数组中是否存在某个值
- php isset 和 array_key_exists 检查数组中是否存在某值的区别
- js判断数组或对象中的key是否存在
- js判断一个对象数组里是否存在某个元素
- PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
- js检查元素是否包含在数组中
- 检查数组中是否存在某个值 php-数组函数in_array()
- php-Arrays 函数-array_key_exists-检查给定的键名或索引是否存在于数组中
- 自己用js手动写个判断数组(多维)是否存在某值
- 检查数组中是否存在某个值 php-数组函数in_array()