js中常用的4種模糊查詢詳解(includes()、indexOf()、search()、match())
includes()
includes() 方法用來判斷一個數(shù)組或字符串是否包含一個指定的值,如果是則返回 true,否則返回false。

indexOf()
indexOf() 方法可返回數(shù)組或字符串中某個指定的元素位置。
在數(shù)組中該方法將從頭到尾地檢索數(shù)組,看它是否含有對應(yīng)的元素。開始檢索的位置在數(shù)組 start 處或數(shù)組的開頭(沒有指定 start 參數(shù)時)。如果找到一個 item,則返回 item 的第一次出現(xiàn)的位置。開始位置的索引為 0。
如果在數(shù)組中沒找到指定元素則返回 -1。
在字符串中,與在數(shù)組中不同之處在與,當在字符串中尋找的是空字符串時,返回值為0,而不是-1

search()
search() 方法用于檢索字字符串中指定的子字符串,或檢索與正則表達式相匹配的子字符串。
如果沒有找到任何匹配的子串,則返回 -1
當在字符串中尋找的是空字符串時,返回值為0,而不是-1

match()
在字符串內(nèi)檢索指定的值,或找到一個或多個正則表達式的匹配
有的話以陣列回傳,否則回傳 null
其中查找為空字符串時,index返回值也為0

補充:js中includes() 和indexOf() 兩方法區(qū)分
描述
- includes() ---- 判斷一個數(shù)組是否包含一個指定的值。支持ES5語法
- indexOf() ---- 搜索數(shù)組中的元素,并返回它所在的位置。支持ES6語法
使用與返回值(undefined、NaN需特殊注意)
- includes() 返回值true / false
let arr = [1,2,'san',4,,NaN];
console.log(arr.includes('san')); //true
console.log(arr.includes(6)); //false
console.log(arr.includes(undefined)); //true
console.log(arr.includes(NaN)); //true
- indexOf() 返回查找元素下標,沒有返回-1
var arr = [1,2,'san',4,,NaN];
console.log(arr.indexOf('san')); //2
console.log(arr.indexOf(6)); //-1
console.log(arr.includes(undefined)); //-1
console.log(arr.includes(NaN)); //-1
var arr2 = [1,undefined];
console.log(arr2.indexOf(undefined)); // 1
關(guān)于+0、-0,兩種方法都不區(qū)分正負
瀏覽器兼容性
- includes()
chrome47 - firefox43 - safria9 - opera34 - ie14 - indexOf()
ie8及早版本不支持除外,其他都支持
所以indexOf的兼容性相對較好
總結(jié)
到此這篇關(guān)于js中常用的4種模糊查詢(includes()、indexOf()、search()、match())的文章就介紹到這了,更多相關(guān)js常用模糊查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
微信小程序通過點擊事件跨頁面?zhèn)鲄⒓癲ata-方法傳參(data-)的示例詳解
在?vue?中,我們可以直接在點擊事件中放入傳遞的參數(shù)進行傳參;然而微信小程序中并不適用這樣的寫法,但是微信小程序可以通過自定義屬性從而綁定參數(shù)使用,這篇文章主要介紹了微信小程序通過點擊事件跨頁面?zhèn)鲄⒁约癲ata-方法傳參(data-),需要的朋友可以參考下2023-12-12
JavaScript實現(xiàn)視頻轉(zhuǎn)GIF的示例代碼
這篇文章主要介紹了JavaScript實現(xiàn)視頻轉(zhuǎn)GIF,本文一共會按照以下三步去實現(xiàn)一個視頻轉(zhuǎn)?GIF?功能,解封裝視頻,從視頻文件中獲取視頻幀,解碼視頻幀,獲取幀圖像信息,拼裝幀圖像信息,生成?GIF,需要的朋友可以參考下2024-03-03
JavaScript實現(xiàn)瀏覽器不同標簽頁通信的原理與實踐
這篇文章主要為大家詳細系統(tǒng)梳理了不同頁簽(Tab / Window / Frame)之間的通信手段以及具體的實現(xiàn)方法,感興趣的小伙伴可以跟隨小編一起學習一下2025-08-08
js判斷iframe內(nèi)的網(wǎng)頁是否滾動到底部觸發(fā)事件
這篇文章主要介紹了js判斷iframe內(nèi)的網(wǎng)頁是否滾動到底部觸發(fā)事件,需要的朋友可以參考下2014-03-03
iview?date-picker?options只可選當前日期之前的(當前之后的禁用)
如果日期對象date的時間戳大于當前時間的時間戳,則該日期在當前日期之后,會被禁用,下面通過實例代碼給大家介紹iview?date-picker?options只可選當前日期之前的,感興趣的朋友跟隨小編一起看看吧2024-12-12

