老师错哪里了,帮忙看下。

来源:3-15 编程练习

慕运维1089

2019-07-20 11:12:26

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>string方法</title>

</head>

<body>

<script>

    //补充代码

    var srr=" JavaScript是属于网络的脚本语言!JavaScript被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。JavaScript是因特网上最流行的脚本语言。JavaScript很容易使用!你一定会喜欢它的!" 

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

        var add=srr.substr(i,10),ad=srr.charAt(i);var mum=0; 

        if(ad=="J"){

        //document.write(i)

        }

        if(add=="JavaScript"){

           mum++;

        document.write("JavaScript第"+mum+"次出现是在"+i+"的位置<br>");

        }

    }document.write("JavaScript在这段话中出现了"+mum+"次")

</script>

</body>

</html>


写回答

2回答

好帮手慕慕子

2019-07-20

同学你好, 能够自己找到问题,很棒哦!

因为放在循环外表示全局变量, 每次累加的值会被保存起来, 放在for循环里面表示的,每次循环num都会被重新赋值为0,导致最后效果没有实现

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~~

0

慕运维1089

提问者

2019-07-20

老师我找到原因了,但是为什么必须把var mum=0;定义到for(){}最外面呢?

0

0 学习 · 40143 问题

查看课程