JavaScript中indexOf與search的區別詳解
來源:懂視網
責編:小采
時間:2020-11-27 20:10:39
JavaScript中indexOf與search的區別詳解
JavaScript中indexOf與search的區別詳解:在我們前一篇文章中我們給大家介紹了indexof的使用詳解,相信小伙伴們對此都不陌生、indexof判斷字符串是否包涵子字符串時特別常用,正則不熟練同學的利器。今天我們就繼續給大家介紹下JavaScript中indexOf與search的區別詳解!IndexOf()方法是用來
導讀JavaScript中indexOf與search的區別詳解:在我們前一篇文章中我們給大家介紹了indexof的使用詳解,相信小伙伴們對此都不陌生、indexof判斷字符串是否包涵子字符串時特別常用,正則不熟練同學的利器。今天我們就繼續給大家介紹下JavaScript中indexOf與search的區別詳解!IndexOf()方法是用來

在我們前一篇文章中我們給大家介紹了indexof的使用詳解,相信小伙伴們對此都不陌生、indexof判斷字符串是否包涵子字符串時特別常用,正則不熟練同學的利器。今天我們就繼續給大家介紹下JavaScript中indexOf與search的區別詳解!
IndexOf()方法是用來判斷一個字符串是否存在于一個更長的字符串中。從長字符串左端到右端來搜索,如果存在該子字符串就返回它所處的位置(即索引)。如果在被搜索的字符串沒有找到要查找的字符串返回-1。注意,這里的位置應當填寫索引值。所有的字符串索引都是從零開始,第一個字符的位置就是0,終點位置就是字符串的長度減去1。
該方法等價于C語言中的strstr函數及Visual Basic語言中的inStr函數。這個方法也有一個相應的函數,即lastIndexOf(),從長字符串的右端搜索。
那么問題來了,search()方法也是同樣返回目標自字符串索引值的。indexOf()和search()有什么區別呢?為什么時候該使用它,什么時候該使用search()這個方法呢?
首先要明確search()的參數必須是正則表達式,而indexOf()的參數只是普通字符串。indexOf()是比search()更加底層的方法。
如果只是對一個具體字符串來查找,那么使用indexOf()的系統資源消耗更小,效率更高;如果是查找具有某些特征的字符串(比如查找以a開頭,后面是數字的字符串),那么indexOf()就無能為力,必須要使用正則表達式和search()方法了。
很多時候用indexOf()不是為了真的想知道子字符串的位置,而是想知道長字符串中沒有包含這個子字符串。如果返回索引值是-1,那么說明沒有:不等于-1,那么就是有。
所以一般情況下indexOf比search更省資源。
總結:
相信大家通過本文的學習對indexOf與search的區別有了進一步的了解、希望對你的工作有所幫助!
相關推薦:
JavaScript中關于indexof的使用詳解
indexOf()使用方法以及與 jQuery.inArray()的區別
JavaScript 數組中的 indexOf 方法詳解
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
JavaScript中indexOf與search的區別詳解
JavaScript中indexOf與search的區別詳解:在我們前一篇文章中我們給大家介紹了indexof的使用詳解,相信小伙伴們對此都不陌生、indexof判斷字符串是否包涵子字符串時特別常用,正則不熟練同學的利器。今天我們就繼續給大家介紹下JavaScript中indexOf與search的區別詳解!IndexOf()方法是用來