4-6 编程练习

4-6 编程练习

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
<title>for循环算法</title>
</head>
<body>
<script>
for(var i=1;i<=100;i++){
   
   var i_str=i.toString();
   
   if(substring(i_str)!='7'|| i%7!=0){
       
       console.log(i);
   }
 
}

</script>
</body>
</html>

老师,麻烦检查代码是否有误

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕慕子 2022-02-21 09:40:23

同学你好,substring属于字符串的方法,作用是用来截取字符串的,需要通过字符串调用,不可以直接调用。

建议改为indeOf方法来判断数字中是否包含7,另外,条件要改为与操作&&,如下:

https://img1.sycdn.imooc.com//climg/6212ed2e09551fe208000418.jpg

祝学习愉快~

  • 提问者 慕移动4506339 #1

    老师,修改如下,但有个问题,我已经用to.string 将数字转换成字符串,为什么还不能直接用substring截取字符串看里面是否含有7?

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
    <title>for循环算法</title>
    </head>
    <body>
    <script>
    for(var i=1;i<=100;i++){
       var i_str=i.toString();
       if(i_str.indexOf('7')==-1 && i%7!=0){
           console.log(i);
       }
     
    }
    
    </script>
    </body>
    </html>


    2022-02-21 12:16:30
  • 好帮手慕慕子 回复 提问者 慕移动4506339 #2

    同学你好,修改后的代码实现是对的,针对同学的问题解答如下:

    因为substring方法是截取字符串中介于两个指定下标之间的字符,需要提前知道下标,而7是里面的字符,并不是下标,所以更推荐使用indexOf方法直接来判断是否包含7

    祝学习愉快~

    2022-02-21 13:53:50
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师