为了账号安全,请及时绑定邮箱和手机立即绑定

大神,求解!

 var mystr="Hello World!ololololololol"

怎么查找第5个"o的位置?

正在回答

6 回答

var str = "Hello World!ololololololol";

    var index = 0;

    var i = 0;

    for(i=0; i<5;i++) {

      index = str.indexOf("o", index);

      if (index > -1) {

        index+=1;

      } else {

        break;

      };

    }

    if (i==5) {

      document.write(index);

    } else {

      document.write("无");

    };


0 回复 有任何疑惑可以回复我~
#1

庆余年_123

代码要严密一些啊,兄弟
2017-05-08 回复 有任何疑惑可以回复我~
#2

慕粉0949434804 提问者

非常感谢!
2017-05-09 回复 有任何疑惑可以回复我~
#3

慕粉0949434804 提问者 回复 庆余年_123

大哥,for代码能不能给一个详细的注释,在下新手上路,拜谢!
2017-05-09 回复 有任何疑惑可以回复我~

其实针对这道题目不用写循环直接  document.write(mystr.indexOf("o",mystr.indexOf("o")+1));即可。

0 回复 有任何疑惑可以回复我~


<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>找第5个o的位置</title>

</head>

<body>

<script>

var mystr="Hello World!ololololololol";

var a=0;

var i=0;

var p; 

for(i=0;i<5;i++){

var p=mystr.indexOf("o",a);

if(p>-1){

a=p+1;

}

else{

break;

}    

}

if(i==5){

document.write(p);

}

else{

document.write("无")

}

</script>

</body>

</html>


0 回复 有任何疑惑可以回复我~

回复有字数限制。

var str = "Hello World!ololololololol";

//index表示字符串中的位置索引

var index = 0;

//i表示找到字符o的个数

var i = 0;

for(i=0; i<5;i++) {

  //查找字符串str中从第index个字符开始的第一个字符"o",并返回该字符的索引

  index = str.indexOf("o", index);

  //index > -1表示找到了满足条件的字符"o"

  if (index > -1) {

    //index自增表示下次查找字符"o"时从字符串的下一次位置开始

    index+=1;

  } else {

    break;

  };

}

if (i==5) {

  document.write(index);

} else {

  document.write("无");

};


0 回复 有任何疑惑可以回复我~

<!DOCTYPE html>
<html>
<head lang="en">
   <meta charset="UTF-8">
   <title></title>
   <script>
function find(str,cha,num){
var x=str.indexOf(cha);
for(var i=0;i<num;i++){
x=str.indexOf(cha,x+1);
           }
return x;
       }
var str="Hello World!ololololololol";
document.write(find(str,'o',4));
   </script>
</head>
<body>

</body>
</html>

1 回复 有任何疑惑可以回复我~
#1

Mk_zzg

for(var i=0;i<num-1;i++) document.write(find(str,'o',5));
2017-05-08 回复 有任何疑惑可以回复我~

var mystr="Hello World!ololololololol"

myarr = mystr.split("o");

var count=0;

for(var i=0;i<5;i=i+1){

count+=myarr[i].length+1;

}


1 回复 有任何疑惑可以回复我~
#1

被解救的Django

刚开始一直在想用 不断的进行strsub 来做 但是不知道为啥弄不好 才用这种的 这种简单
2017-05-08 回复 有任何疑惑可以回复我~
#2

被解救的Django

var mystr="Hello World!ololololololol" var count = 0; for(var i=0;i<5;i++){ count+=mystr.indexOf("o")+1; mystr=mystr.substr((mystr.indexOf("o")+1)); } document.write(count);
2017-05-08 回复 有任何疑惑可以回复我~
#3

被解救的Django 回复 被解救的Django

搞出来了 ,就是要注意初始化count = 0; 卡这好久啊
2017-05-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468265    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

大神,求解!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信