要判断数组中是否包含某个元素,从原理来来说,就是遍历整个数组,然后判断是否相等
Jquery方法
可以使用Jquery提供的方法:使用$.inArray()来判断。
inArray() 函数用于在数组中查找指定值,并返回它的索引值(如果没有找到,则返回-1)
$.inArray("元素(字符串)",数组名称)
当存在该元素(字符串)时,返回该元素在数组的下标,不存在时返回 -1
示例:
<!DOCTYPE> <html> <head> <title>jquery判断值是否存在于数组中</title> <meta charset="utf-8"> </head> <body> <script src="http://libs.bAIdu.com/jquery/2.0.0/jquery.min.js"></script> <script> //参数第一个为数组,第二个为需要判断是否存在于数组中的值 function isInArray(arr,val){ var str = ","+arr.join(",")+","; if(str.indexOf(","+val+",") != "-1"){ //该数存在于数组中 arr.splice($.inArray(val,arr),1); //把该数从数组中删除 console.log(arr); }else{ //该数不存在于数组中 console.log("不存在"); } } var arr = [1,28,60,80,6]; isInArray(arr,28);//存在,删除元素28 isInArray(arr,18);//不存在,提示“不存在” </script> </body> </html>
效果图:
js方法
var arr = ["a", "b", "c"]; // js arr.indexOf("c") var result1 = arr.indexOf("c"); //返回index为2
自定义方法
var arr = ["a", "b", "c"]; // 自定义 contains(arr, "c")方法 function contains(arr, obj) { //while var i = arr.length; while(i--) { if(arr[i] === obj) { return i; } } return -1; } var result1 = contains(arr, "c"); //返回index为2
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)