希岛爱理av免费一区二区,成人性教育av免费网址,欧美7777,在线免费日韩片

十年專注于品牌網站建設 十余年專注于網站建設_小程序開發_APP開發,低調、敢創新、有情懷!
南昌百恒網絡微信公眾號 掃一掃關注
小程序
tel-icon全國服務熱線:400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號
掃一掃打開百恒網絡微信小程序

百恒網絡

南昌百恒網絡

字符串位置查詢常用函數indexOf()和lastIndexOf()使用方法

百恒網絡 2012-09-18 7079

有兩個可以從字符串中查找子字符串的方法:indexOf()和lastIndexOf()。這兩個方法都是從一個字符串中搜索給定的子字符串,然后返子字符的位置(如果沒有找到該子字符串,則返回-1)。這兩個方法的區別在于:indexOf()方法從字符串的開頭向后搜索子字符串,而lastlndexOf()方法是從字符串的末尾向前搜索子字符串。還是來看一個例子吧:

var stringValue="hello world";

alert(stringValue.indexOf("o"));

alert(stringValue.lastIndexOf("o"));

子字符串”o”第一次出現的位置是4,即”hello”中的”o“;最后一次出現的位置是7,即”world”中的"o"。如果”o”在這個字符串中僅出現了一次,那么indexOf()和lastlndexOf()會返回相同的位置值。

南昌網站建公司技術員提醒大家indexOf是從0開始計算位置,而lastIndexOf是從1開始,包括空格.

這兩個方法都可以接收可選的第二個參數,表示從字符串中的哪個位置開始搜索。換句話說,indexOf()會從該參數指定的位置向后搜索,忽略該位置之前的所有字符;而lastlndexOf()則會從指定的位置向前搜索,忽略該位置之后的所有字符。看下面的例子:

var stringValue="hello world";

alert(stringValue.indexOf("o",6));

alert(stringValue.lastIndexOf("o",6));

在第二個參數6傳遞給這兩個方法之后,得到了與前面例子相反的結果。這一次,由于indexOf()是從位置6(字母"w")開始向后搜索,結果在位置7找到了no”,因此它返回7。而lastlndexOf()是從位置6開始向前搜索。結果找到了”hello”中的”o”,因此它返回4。在使用第二個參數的情況下,

可以通過循環調用indexOf()或lastlndexOf()來找到所有匹配的子字符串,如下面的例子所示:

var stringValue = "BaiHeng Network engineers learning Javascript is a very happy thing";

var positions=new Array();

var pos=stringValue.indexOf("e");

while(pos>-1){

positions.push(pos);

pos=stringValue.indexOf("e",pos+1);

}

alert(positions); //"4,9,16,21,22,27,52"

這個例子通過不斷增加indexOf()方法開始查找的位置,遍歷了一個長字符串。在循環之外,首先找到了"e"在字符串中的初始位置;而進入循環后,則每次都給indexOf()傳遞上一次的位置加l。這樣,就確保了每次新搜索都從上一次找到的子字符串的后面開始。每次搜索返回的位置依次被保存在數組positions中,以便將來使用。


400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號
掃一掃打開百恒網絡小程序

歡迎您的光顧,我們將竭誠為您服務×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務 售后服務
 
售后服務 售后服務
 
備案專線 備案專線
 
×
主站蜘蛛池模板: 瑞丽市| 泾源县| 苍梧县| 松原市| 陆良县| 信丰县| 台东县| 卓尼县| SHOW| 岐山县| 汉沽区| 上杭县| 武功县| 南昌县| 彭州市| 平度市| 龙江县| 平罗县| 通山县| 淳化县| 施秉县| 泰兴市| 竹山县| 宽城| 汨罗市| 文化| 阳东县| 稻城县| 凭祥市| 千阳县| 来宾市| 英德市| 崇文区| 贡嘎县| 长宁县| 台南市| 新郑市| 安塞县| 甘谷县| 淮滨县| 隆回县|