在上一篇文章中我們介紹了JavaScript返回滿足給定條件首個元素的3種方法,感興趣的可以點擊連結進行查閱→《JS數組學習之返回滿足給定條件的首個元素》。這次我們繼續JavaScript陣列的學習,來聊聊利用JS怎麼偵測指定值在陣列中是否存在,有需要的朋友可以學習了解一下~
今天本文的主要內容是:給定一個值,遍歷數組,檢查數組是不是包含該值。簡單來說,檢查數組中是不是有一個或多個數組元素的值等於該值。
下面本文會帶大家了解4種方法,透過程式碼範例來給大家具體介紹的。廢話不多說,直接開始~
方法1:利用for循環
實現思想:利用for語句來遍歷數組,在每次循環中利用===
判斷數組元素是否為給定值,當有第一個元素滿足條件,則數組中存在給定元素,給出提示,然後使用break語句退出整個循環。
下面透過實例來具體了解一下:判斷fruits數組中是否包含給定元素「榴槤」
var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"]; for(var i=0;i<fruits.length;i++){ if (fruits[i] === "榴莲") { console.log("指定元素‘ "+fruits[i]+" ’是存在的"); break; } }
輸出結果為:
方法2:利用陣列的includes() 方法
includes() 方法用來判斷一個陣列是否包含一個指定的值,如果是回傳true,否則false。
語法:arr.includes(searchElement [, fromIndex])
searchElement 必須。需要尋找的元素值。
fromIndex 可選。從該索引處開始尋找 searchElement。如果為負值,則按升序從 array.length fromIndex 的索引開始搜尋。預設為 0。
下面透過實例來具體了解:判斷fruits陣列中是否包含給定元素「榴槤」
var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"]; if(fruits.includes('榴莲')){ console.log("给定元素是存在的"); }else{ console.log("给定元素是不存在的"); }
輸出結果為:
方法3:利用陣列的some()方法
some()方法可以偵測陣列中是否存在符合條件的元素。換個角度思考,也可以用來偵測數組中的所有元素是否都不符合指定條件,都不符合的話就回傳 false,有一個或多個符合的話就回傳 true。
語法:array.every(function callbackfn(Value,index,array),thisValue)
下面透過實例來具體了解:
function f(value, index, ar) { if (value === '橘子') { return true; } } var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"]; var b = fruits.some(f); if (b) { console.log("给定元素是存在的"); } else { console.log("给定元素是不存在的"); }
輸出結果為:
给定元素是存在的
方法4:利用陣列的indexOf()方法
indexOf() 方法可傳回數組中某個指定元素的第一次出現位置。如果要檢索的元素沒有出現,則該方法傳回 -1。
實作想法:利用該方法檢查指定值在陣列的第一次出現位置,如果位置是存在的,則包含該給定元素。如果返回-1,則不包含該給定元素。
下面給出實作程式碼:
var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"]; var b = fruits.indexOf("橘子"); if (b>0) { console.log("给定元素是存在的"); } else { console.log("给定元素是不存在的"); }
輸出結果為:
给定元素是存在的
方法5:利用陣列的lastIndexOf()方法
lastIndexOf()方法可搜尋陣列中的元素,並傳回它最後出現的位置。如果要檢索的元素沒有出現,則該方法傳回 -1。
實作想法:利用該方法檢查指定值在陣列的最後出現位置,如果位置是存在的,則包含該給定元素;如果傳回-1,則不包含該給定元素。
下面給出實作程式碼::
var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"]; var b = fruits.lastIndexOf("葡萄"); if (b>0) { console.log("给定元素是存在的"); } else { console.log("给定元素是不存在的"); }
輸出結果為:
给定元素是不存在的
好了,就說到這裡了,有需要的可以看:javascript影片教學
以上是JS數組學習之檢查是不是存在給定元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!