javascript判断数组是否包含,js判断是否为数组的方法
本教程运行环境:windows7系统,javascript1.8.5jquery1.10.2版本1.10.2,戴尔G3电脑。
js中有一个数组。如何判断这个数组中是否存在一个元素?首先是循环判断。代码如下:
var arr=[a , s , d , f ];
console.info(isInArray(arr, a ));//流通的方式
/**
*使用循环来确定数组中是否存在元素。
* @param {Object} arr数组
* @param {Object} value元素值
*/
函数isInArray(arr,value){
for(var I=0;长度;i ){
if(value===arr[i]){
返回true
}
}
返回false
}这个方法是通用的,但是需要自己写函数。让我们来看看第二种方法:
var arr=[a , s , d , f ];
console . info(arr . index of( a ));//部分版本的IE不支持,可以自行扩展。这样,直接用数组的indexOf方法来判断。如果数组中存在该元素,则返回数组中该元素的下标值。如果不是,则返回-1。注释indexOf是区分大小写的,字母O必需大写,不然是会报错的,。另外,这种方法在IE的某些版本中是行不通的,你需要在使用之前做出判断。修改后的代码如下:
/**
*使用indexOf确定数组中是否存在元素。
* @param {Object} arr数组
* @param {Object} value元素值
*/
函数is array 3(arr,value){
if(arr . indexoftypeof(arr . index of)== function ){
var index=arr . index of(value);
if(index=0){
返回true
}
}
返回false
}第三种方式是使用jquery的inArray方法,返回数组中元素的下标。如果在AND数组中不存在,则返回-1,代码如下:
/**
*使用jquery的inArray方法确定数组中是否存在元素。
* @param {Object} arr数组
* @param {Object} value元素值
*/
函数is array 2(arr,value){
var指数=$。inArray(value,arr);
if(index=0){
返回true
}
返回false
}此方法可用于删除数组中下标值未知的元素。代码如下:
var arr=[a , s , d , f ];
Console.info(删除元素前的数组: arr );
排列拼接($。inArray(a ,arr),1);
Console.info(删除元素后的数组: arr );执行结果是:
[Web浏览器]删除元素前的数组:a,s,d,f /test/index.html (12)
【网页浏览器】删除元素后的数组:s,d,f /test/index.html (14)【相关推荐:javascript学习教程】以上是javascript如何判断值是否在数组中的详细内容。更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。