1. 程式人生 > >js中的indexOf 和 lastIndexOf 方法

js中的indexOf 和 lastIndexOf 方法

indexOf()和lastIndexOf是從字串中查詢子字串。它們都從一個字串中搜索給定的字串,然後返給子字串的位置

(若沒有找到該子字串則返回-1)

區別:indexOf()方法從字串開頭向後搜尋子字串,lastIndexOf()從字串尾向前開始搜尋子字串

這裡可能有些人會和我一樣犯一些迷糊

如這個題:

    var stringVal = "hrello world"
    alert(stringVal.indexOf("r"));
    alert(stringVal.lastIndexOf("r"));

執行結果顯示是  1和9

剛開始我以為結果應該是 1 和10,其實這裡的lastIndexOf()只是從後面開始搜尋而已,它的索引位置還是從0開始的,所以不要和我一樣誤解了。

這兩個方法都可以接收可選的第二個引數,表示從字串中的哪個位置開始搜尋。indexOf()會從該引數指定的位置向後搜尋,忽略該位置之前的所有字元;lastIndexOf()則會從指定的位置向前搜尋,忽略該位置之後的所有字元

如:

var stringValue = "hello world";
alert(stringValue.indexof("o",6));
alert(stringValue.lastIndexOf("o",6));

第一個結果是7,第二個結果是4