indexOf() 方法是返回某个指定的字符串值在字符串中首次出现的位置。切记是首次出现的位置。indexOf(“string”,0)这个方法有两个参数,分别是要检索的字符串以及将从指定的位置开始检索。
注意:1、如果要检索的字符串值没有出现,则该方法返回 -1。
2、indexOf() 方法对大小写敏感!
写一个简单的小例子。来看代码:
<!--需求:找到诗句中“轻轻”分别所在的位置--> <p>轻轻的我走了,正如我轻轻的来;我轻轻的招手,作别西天的云彩</p> <span></span><!--把“轻轻”所在的位置写入到这里面-->
来看js代码:
<script> window.onload=function(){ var oSpan=document.getElementsByTagName("span"); var str="轻轻的我走了,正如我轻轻的来;我轻轻的招手,作别西天的云彩"; var s="轻轻"; for(var i=0;str.indexOf(s,i)!=-1;i<str.length){ oSpan[0].innerHTML+=str.indexOf(s,i)+",";//每次都要加等于也就是追加下去 i=str.indexOf(s,i)+ s.length;//在得知每一个“轻”的位置的时候,从下一个继续计算下去要加上本身的长度 } }; </script>
这样返回的结果就是如图所示:
也就是第0,10,16的位置。需要注意的是我上面例子里for循环里 i 的作用就是每次循环返回的内容若是目标字符串的话就从下一个继续。
好了,今天就这样了!