<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>string对象</title> <script type="text/javascript"> var mystr="hello world"; document.write(mystr.indexOf("o")+"<br/>"); for (var i = 0; i < mystr.length; i++) { document.write("字母o的位置是"+mystr.indexOf("o",i)+"<br/>"); } </script> </head> <body> </body> </html>
输出的结果是
4
字母o的位置是4
字母o的位置是4
字母o的位置是4
字母o的位置是4
字母o的位置是4
字母o的位置是7
字母o的位置是7
字母o的位置是7
字母o的位置是-1
字母o的位置是-1
字母o的位置是-1
这个mystr中只有两个o,能不能只输出4,7不要重复这么多
加了个判断
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>string对象</title>
<script type="text/javascript">
var mystr="hello world oasdhihisdpoaisjdhoasjdoiajs";
document.write(mystr.indexOf("o")+"<br/>");
var j;
for (var i = 0; i < mystr.length; i++) {
if(j!=mystr.indexOf("o",i)){
j=mystr.indexOf("o",i);
if(j==-1){
break;
}
document.write("字母o的位置是"+mystr.indexOf("o",i)+"<br/>");
i=j;
}
}
</script>
</head>
<body>
</body>
</html>
indexOf("0");
indexOf("0",indexOf("0")+1)
用这个有起效哦
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>string对象 </title>
<script type="text/javascript">
var mystr="I love JavaoScript!";
for(var j=0;j<mystr.length;j++){
if(mystr.charAt(j)=="o"){
document.write(mystr.indexOf("o",j)+"<br/>");break;
}
}
for(var j=mystr.indexOf("o",j)+1;j<mystr.length;j++){
if(mystr.charAt(j)=="o"){
document.write(mystr.indexOf("o",j)+"<br/>");break;
}
}
</script>
</head>
<body>
</body>
</html>
之前的那个你有了,看看这个另一种方法
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>string对象 </title>
<script type="text/javascript">
var mystr="I love JavaoScript!";
for(var i=0;i<mystr.length;i++){
if(mystr.charAt(i)=="o"){ document.write(mystr.indexOf("o",i)+"<br/>");}
}
</script>
</head>
<body>
</body>
</html>
这个是最简便的,希望你可以采纳
document.write(mystr.indexOf('o',(mystr.indexOf('o',0)+1)));抱歉刚刚的是错的
document.write(mystr.indexOf('o',0)+mystr.indexOf('o',mystr.indexOf('o',0)));
只能说加判断
你这肯定输出这么多啊,不用for循环就行了。实在想用,得加if判断,不过很麻烦。
顺便问一下这是哪个编辑器?