方法:1、使用indexOf()函數(shù)獲取指定元素在數(shù)組中第一次出現(xiàn)的位置,如果返回值為“-1”則元素不在數(shù)組中;2、使用lastIndexOf()獲取指定元素在數(shù)組中最后一次出現(xiàn)的位置,如果返回值為“-1”則元素不在數(shù)組中。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
在javascript中,可以利用indexOf()和lastIndexOf()函數(shù)來判斷元素是否在數(shù)組中。
indexOf() 和 lastIndexOf() 方法可以檢索數(shù)組元素,返回指定元素的索引位置;如果指定元素不存在,則返回“-1
”。
使用 indexOf() 在數(shù)組中查找元素
indexOf() 返回某個元素值在數(shù)組中的第 1 個匹配項(xiàng)的索引,如果沒有找到指定的值,則返回 -1。用法如下:
array.indexOf(item,start)
-
item 必須。查找的元素。
-
start 可選的整數(shù)參數(shù)。規(guī)定在數(shù)組中開始檢索的位置。它的合法取值是 0 到 stringObject.length – 1。如省略該參數(shù),則將從字符串的首字符開始檢索。
indexOf() 方法是按升序索引執(zhí)行搜索,即從左到右進(jìn)行檢索。檢索時,會讓數(shù)組元素與 searchElement參數(shù)值進(jìn)行全等比較===。
示例:查找元素是否在數(shù)組中
var arr = ["ab","cd","ef","ab","cd"]; var str="cd"; if(arr.indexOf(str)===-1){ console.log("指定元素:"+str+" 不在數(shù)組中"); }else{ console.log("指定元素: "+str+" 在數(shù)組中"); }
修改一下需要查找的值:
var str="gh"; if(arr.indexOf(str)===-1){ console.log("指定元素:"+str+" 不在數(shù)組中"); }else{ console.log("指定元素: "+str+" 在數(shù)組中"); }
使用 lastIndexOf() 在數(shù)組中查找元素
indexOf() 返回某個元素值在數(shù)組中的最后 1 個匹配項(xiàng)的索引,如果沒有找到指定的值,則返回 -1。其用法與 indexOf() 相同。
示例:查找元素是否在數(shù)組中
var arr = ["ab","cd","ef","ab","cd"]; var str="gx"; if(arr.lastIndexOf(str)===-1){ console.log("指定元素:"+str+" 不在數(shù)組中"); }else{ console.log("指定元素: "+str+" 在數(shù)組中"); }
【