老师,感觉自己不太聪明的样子。。

老师,感觉自己不太聪明的样子。。

我都要用俩if,我看置顶那位同学写的太巧妙了,把j++还能用到document.write里,所以我想问一下document.write里面j++也和for循环一样是先打印后+1吗?j++不就是直接+1了吗为什么和for里的一样后执行? 那位同学写的东西在这里:https://class.imooc.com/course/qadetail/122111


<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>string方法</title>

</head>

<body>

<script>

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

      var j="JavaScript";

      var k=0;

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

          if(str.charAt(i)=="J"){

               if(str.substr(i,10)===j){

                   k++;

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

               }

          }

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

</script>

</body>

</html>



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

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

2回答
好帮手慕星星 2020-05-31 12:19:05

同学你好,粘贴的代码是正确的,很棒!

针对问题回复:

1、同学代码和提供链接代码变量初始值是不一样的。同学代码中k初始值为0,经过加1操作后k值为1。而另外一个代码中j的初始值为1,j++(先返回后加1)的值为1 

http://img1.sycdn.imooc.com//climg/5ed32f010928d73e10010235.jpg

所以最后的结果是一样的。

2、明白同学的意思,还需要再加一层判断,没有问题。感谢反馈,我们会尽快处理的。

有不一样的想法或者觉得课程中有问题直接提出来就好,我们非常愿意聆听大家的建议,共同进步。

祝学习愉快!

提问者 Darkholme 2020-05-31 01:01:12

但是他写的这种,有驳于要求,要求叫找JavaScript,他把只要是J开头的是10长度的字符串全统计出来了,而且如果把内容改了,信息就是错误的。。

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

输出结果:JavaSkcipt第1次出现是在0的位置JavaScpipt第2次出现是在22的位置JavaScript第3次出现是在77的位置JavaScript第4次出现是在102的位置JavaSkcipt在这段话中出现了4次

  • 提问者 Darkholme #1
    感觉自己像个杠精
    2020-05-31 01:15:55
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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