相同的数怎么取一个

来源:7-8 返回指定的字符串首次出现的位置

清风流光

2017-04-10 16:46

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>string对象 </title>

<script type="text/javascript">

function demo(){

 var mystr="Hello World!"

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

  var myposition=mystr.indexOf("o",i)

  if(myposition==-1){

      break;

  }

  else{

      document.write(myposition+"<br>")}

  }

}

  demo();

</script>

</head>

<body>

</body>

</html>

这段代码怎么改能让结果只出现一次4和7?

写回答 关注

3回答

  • 慕粉0949434804
    2017-05-08 16:53:27

    主要就是for代码那几句


  • 慕粉0949434804
    2017-05-08 16:51:31

    老师,可不可以给下面的代码加上注释呀?新手表示不太理解,谢谢!

  • 清风流光
    2017-04-10 17:08:19

    <!DOCTYPE html>

    <html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>string对象 </title>

    <script type="text/javascript">

    function demo(){

     var mystr="Hello World!"

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

      var myposition=mystr.indexOf("o",i)

      var only=mystr.indexOf("o",(i+1))

      if(myposition==-1){

          continue;

      }

      else if(myposition==only){

      continue;

      }

      else{

          document.write(myposition+"<br>")}

      }

    }

      demo();

    </script>

    </head>

    <body>

    </body>

    </html>

    不应该用break跳出  应该用continue跳过

    清风流光 回复qq_唯爱Y...

    每次循环都和后面比较 有没有相同的‘o’,有就跳过,继续循环。 等你学到 后面 直接转成数组 进行过滤比较 就简单了 var a='hello world'; var b=a.split(''); b.filter(function(x,y){ if(x=='o'){ document.write(y+'<br />') } })

    2017-05-20 01:53:10

    共 2 条回复 >

JavaScript进阶篇

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

468195 学习 · 21891 问题

查看课程

相似问题