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

请大佬看一下,想输出每一个“o“的位置

https://img1.sycdn.imooc.com//5b9df36d0001422516470758.jpg这个代码每次运行都搞的电脑卡爆,不知道是什么问题,大家帮忙看一下,谢谢大家

正在回答

8 回答

<script>var str="hello world!";var j=0;for(var i=0;i<str.length;i++){j=str.indexOf("o",i);if(j!=-1){document.write(j+"<br>");i=j+1;}}</script>


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

qq_Extra

结果是换行显示4和7
2018-09-17 回复 有任何疑惑可以回复我~
#2

顾剑深情_ 提问者 回复 qq_Extra

嗯嗯 确实是这样 谢谢啦 幸苦啦
2018-09-21 回复 有任何疑惑可以回复我~
#3

假装不开心

为什么if语句里面不是i=j,而是i=j+1呢?i=j+1执行后又执行了一次i++,这样应该会跳过一位吧。比如把world换成oorld就可以看出问题了,输出的是4,6;正确的是4,6,7
2018-11-06 回复 有任何疑惑可以回复我~
<script type="text/javascript">
  var mystr="Hello World!";
  for(var i=0;i<mystr.length;i=mychar+1){
    mychar=mystr.indexOf("o",i);
    if(mychar!=-1){
      document.write(mychar+"<br/>");
    } else {
      document.write("没有了!");
      break;
    }
  }
</script>


2 回复 有任何疑惑可以回复我~
<script type="text/javascript">
  var mystr = "Hellooooooo World!";

  var num = 0;
  var count = 1;

  for(var i=0; i<mystr.length; i++){
    num = mystr.indexOf('o',i);

    if(num == i){
      document.write('第'+ count + '个 O 在位置:' + num + '<br>');
      count++;
    }
  }

</script>


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

<script>

    var str = 'hello world!';

var len = str.length;

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

var char = str.charAt(i);

if(char == 'o') {

document.write(i + '<br>');

}

}

var j = 0;

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

console.log(i);

j = str.indexOf('o',i); //第一次循环j=4

if(j != -1) {

document.write('<br>' + j);

i = j;  //i将会从找到符合字符位置的下一个位置开始循环

}

}

</script>


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

这样是对的:

<script>

var str="hello wooooooooooo!";

var j=0;

for(var i=0;i<str.length;i++)

{

    j=str.indexOf("o",i);

    if(j!=-1&&j==i)

        {

            document.write(j+"<br>");

        }

}</script>


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

<script type="text/javascript">

  var mystr="Hello World!"

  var i,j;

  for(i=0;i<mystr.length;){

      j=mystr.indexOf("o",i);

      if(j!=-1){

          document.write(j+"</br>");

          i=j+1;

      }else{

          break;

      }    

  }

</script>


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

我试了一下    好像还是不行啊

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

document.write(mystr.indexOf("o")+"<br/>"); 试一下,这个、、

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

顾剑深情_ 提问者

不行啊 我试了一下
2018-09-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请大佬看一下,想输出每一个“o“的位置

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