JS中的indexOf方法

2021-10-05 19:18:57 字數 1540 閱讀 2416

indexof()是js中內建的方法之一,它的功能大家都很熟悉:簡單來說就是得到資料的索引,對於正則不熟練的人,是個很不錯的方法。

如果查詢到返回索引,反之返回-1(固定用法);

因為indexof()在不同型別使用的時候可能有細節性的注意點;

這裡我們對不同資料型別使用indexof的場景進行討論(其實就是string和array)

注:(暫不討論兩個引數時(第二個引數為查詢的起始位置),以及lastindexof()

string型別使用indexof();

string中的indexof方法

(話不多說直接上**,不跟你多bb)

var s =

'12345'

; console.

log(s.

indexof(1

));//0

console.

log(s.

indexof

('1'))

;//0

console.

log(

'----------------------------'

);

相信大家已經發現特點,也就是string的indexof()是對資料進行了隱式型別轉換的,如果引數是數值它會轉換為字元來進行查詢然後返回索引,本質原因是什麼呢,那就是 我們js底層**中string.prototype.indexof()使用的是==進行比較判斷;

number型別的indexof()

醒醒,number型別哪來的indexof()方法,會直接報錯的好嗎,

如果想對數值型別的進行查詢索引,可以將數值轉換為字元再進行查詢,方法有很多:

- string()

- .tostring()

- 與空字元』'進行+拼接

array型別的indexof()

var a =[1

,2,3

,'4'

,'5'

,'6'];

console.

log(a.

indexof(3

));//2

console.

log(a.

indexof

('4'))

;//3

console.

log(a.

indexof(4

));//-1

可以看到arrayindexof()是不會進行隱式型別轉換的,也就是說array.prototype.indexof()底層**在實現的時候使用的是強等於===嚴格比較;

總結

js陣列中的indexof()方法

indexof 語法 arrayobject.indexof searchvalue,startindex 功能 從陣列的開頭 位置0 開始向後查詢。引數 searchvalue 必需,要查詢的項 startindex 可選,起點位置的索引。返回值 number,查詢的項在陣列中的位置,沒有找到的情...

JS中的indexof 解釋

indexof 方法可返回某個指定的字串值在字串中首次出現的位置。stringobject.indexof searchvalue,fromindex 該方法將從頭到尾地檢索字串 stringobject,看它是否含有子串 searchvalue。開始檢索的位置在字串的 fromindex 處或字串...

JS中indexOf的用法

string.indexof char,startindex count 返回指定字元在原字串中的第乙個匹配項的索引。可指定字元開始檢索位置和指定長度的字元,若沒有找到該字元,則返回 1。也可以判斷陣列中是否包含某個值。示例1 查詢字串中某一字元從頭開始第一次出現的索引 var str hello ...