第七周笔记

18.运算符的优先级(K26)

1., 运算符
      1)使用可以分割多个语句,一般可以在声明多个变量时使用

 <script>var a = 1 , b = 2 , c = 3;alert(b);</script>

2.优先级

      1)若优先级相同,则从左往右计算
      2)实际上可以使用()改变优先级

19.语句(K27)

1.内容:

      1)程序由一条一条语句构成
      2)语句是按照自上至下的顺序一条条执行的
      3)在JS中,可以使用{}来为语句分组
      4)同一个{}中的语句我们称为是一组语句,要么都执行,要么都不执行
      5)一个{}中的语句我们也称为一个代码块
      6)JS中的代码块只具有分组作用

20.流程控制语句(K28-K32)


  1.条件判断语句:在执行某个语句之前进行判断,只有条件成立才执行
    if语句
      1)语法一
            if(条件表达式)
              语句
       注:if语句在执行时,会先对条件表达式进行求值判断
           如果条件表达式的值为true,则执行if后的语句
           如果条件表达式的值为false,则不会执行if后的语句
           if语句只能控制紧随其后的那个语句,可使用代码块使其捆绑
           在开发中尽量写代码块

  <script>var a = 5;if(a > 3)alert("你有4块源石锭(你是懂坎诺特的QAQ)")</script>

  <script>var a = 2;if(a > 3)alert("你有4块源石锭(你是懂坎诺特的QAQ)");alert("你欺骗了坎诺特!!!");</script>

   <script>var a = 8;if(a > 3 && a < 10){alert("你的财富不足以打动坎诺特,但我们可以做笔小生意");}//alert("你欺骗了坎诺特!!!");</script>

2.条件分支语句(if…else…语句)
            if(条件表达式){
              语句…
             }else{
              语句…
             }
       注:当该语句执行时,会先对if后的条件表达式进行求值判断
           如果条件表达式的值为true,则执行if后的语句
           如果条件表达式的值为false,则执行else后的语句

    <script>var intellect = 66;if(intellect >= 70){alert("想和萨卡兹姑娘共舞吗");}else{alert("来和萨卡兹大姑娘共舞吧!(岩崩锤!)");}</script>

3.循环语句(if…else if…else)
            if(条件表达式){
              语句…
             }else if(条件表达式){
              语句…
             }else if(条件表达式){
              语句…
             }else{
              语句…
             }
       注:当该语句执行时,会从上到下依次对条件表达式进行求值判断
           如果条件表达式的值为true,则执行当前语句
           如果条件表达式的值为false,则继续向下判断
           如果所有条件都不满足,则执行最后一个else
           该语句中,只有一个代码块被运行,一旦代码执行,则直接结束语句

  <script>var intellect = 66;if(intellect > 133){alert("整两把作战记录");}else if(intellect > 70){alert("正好摸两把保全派驻");}else if(intellect > 25){alert("肘!嚯嚯弑君者");}else{alert("啊♂!理想的摸鱼时间,来肉鸽!");}</script>

4.提示文本框
      1)形式:prompt(“XXX”);
      2)代入if else:var X = prompt(“XXX”);

21.条件分支语句(K33-K34)

1.条件分支(又名Switch语句)
                 原:

 <script>var num = 3;if(num == 1){console.log("壹");}else if(num == 2){console.log("贰");}else if(num == 3){console.log("叁");}</script>

1)语法:
            switch(条件表达式){
              case 表达式 :
                语句…
                break;
              case 表达式 :
                语句…
                break;
              case 表达式 :
                语句…
                break;
              case 表达式 :
                语句…
                break;
              default:
                语句…
                break;
             }
                 变:

 <script>num = 1;switch(num){case 1:console.log("壹");break;case 2:console.log("贰");break;case 1:console.log("叁");break;default:console.log("非法数字")break;}</script>

注:switch…case…语句
           执行时会依次将case后的表达式与switch后的条件表达式的值进行全等比较
           如果比较结果true,则从当前case处开始执行代码,当前及后的所有都会执行
           如果比较结果为false,则继续向下比较
           使用break可以用来退出switch的结构
           若所有结果为false,则只执行default后的语句
           switch和if都可以互用

22.while循环(K35-K36)

1.while循环:向页面内输出连续的数字
                 环境1:

<script>var n = 1;document.write(n++ +"<br />");document.write(n++ +"<br />");document.write(n++ +"<br />");document.write(n++ +"<br />");document.write(n++ +"<br />");</script>

环境2:

<script>var n = 1;while(true){alert(n++);}</script>

环境3:

 <script>var n = 1;while(true){alert(n++);if(n == 10){break;}}</script>

1)语法:
            while(条件表达式){
                语句…
             }
      2)详细语法:
            a.创初始化一个变量
            var i = 0;
            b.在循环中创建一个条件表达式
            while(i < 10){
            alert(i);
            c.定义一个更新表达式,每次更新初始化变量
                i++;
             }
       注:在对条件表达式进行求值判断,如果值为true,则执行循环体
           循环体执行完毕后,继续对表达式进行判断
           如果为true,则继续执行循环体,以此类推
           如果为false,则终止循环
           死循环不会停止,除非浏览器关闭,不推荐
           break可终止
  2.do…while循环
      1)语法:
            do{
                语句…
             }while(条件表达式)

 <script>var i = 1;do{document.write(i++ +"<br />");}while(i <= 10);</script>

注.执行流程:do…while语句在执行时,会先执行循环体
           循环体执行完毕后,再对while后的条件进行判断
           如果为true,则继续执行循环体,执行完毕继续判断,以此类推
           如果为false,则终止循环
       注:实际上这两个语句功能类似,while先判断后执行,do…while先执行后判断
           do…while可以保证循环体至少执行一次,而while不能
  3.小练习

 <script>var money = 1000;var count = 0;while(money < 5000){money *=1.05;count++;}console.log("一共需要"+count+"年");</script>

tips:输出运算次数+循环
             while+if实现退回重新输入

23.for循环语句(K37-K40)

1.结构:在for循环中,为我们提供了专门的位置放置初始化表达式、条件表达式、更新表达式
  2.语法
       for(初始化表达式;条件表达式;更新表达式){
          语句…
       }

 <script>for(var i = 0 ; i < 10 ; i++){alert(i);}</script>

1)执行流程:
          a.执行初始化表达式,初始化变量(初始化表达式只会执行一次)
          b.执行条件表达式,判断是否循环;true循环,false终止循环
          c.执行更新表达式,更新表达式执行完毕,继续重复执行b.
       注:for循环中的三个部分都可以省略,也可以写在外部
           如果在for循环中不写如何表达式,只写两个;,死循环,一直执行
  3.小练习1.0(100内7的倍数)

   <script>var sum = 0;for(var i = 1; i<=100;i++){if(i % 7 == 0){sum += i;}}console.log("总和为:"+sum);</script>

<script>var sum = 0;var count = 0;for(var i = 1; i<=100;i++){if(i % 7 == 0){sum += i;count++;}}console.log("总和为:"+sum);console.log("总数量为:"+count);</script>

3.小练习2.0(质数残次版)

 <script>var num = prompt("请输入一个大于1的整数");if(num <= 1){alert("该值不合法!");}else{var flag = true;for(var i = 2; i < num; i++){if(num % i == 0){flag = false;}}if(flag){alert(num + "是质数");}else{alert("这个不是质数");}}</script>

24.嵌套的for循环(K41-K44)

1.输出*嵌合号图形
      tips: 向script中的body中输出一个内容:document.write(“ * ”);

<script>for(var i = 0; i < 5; i++){//外部执行一次for(var j = 0; j < 3; j++ ){//内部执行五次,可以决定图形的宽度document.write("* &nbsp;&nbsp;&nbsp;");}document.write("<br />");//外部换行,防止内部一循环一换}</script>

 <script>for(var i = 0; i < 5; i++){//外部执行一次for(var j = 0; j < i + 1; j++ ){//内部执行五次,可以决定图形的宽度document.write("* &nbsp;&nbsp;&nbsp;");}document.write("<br />");//外部换行,防止内部一循环一换}</script>

 <script>for(var i = 0; i < 5; i++){//外部执行一次for(var j = 0; j < 5 - i; j++ ){//内部执行五次,可以决定图形的宽度document.write("* &nbsp;&nbsp;&nbsp;");}document.write("<br />");//外部换行,防止内部一循环一换}</script>

2.打印9*9乘法表

<script>for(var i = 1; i <= 9; i++){//创建一个内层循环控制图形的宽度for(var j = 1; j <= i; j++){document.write(j +"*"+ i +"="+ i * j +"&nbsp;" +"&nbsp;");}document.write("<br />");}</script>

优化:

 <script>for(var i = 1; i <= 9; i++){//创建一个内层循环控制图形的宽度for(var j = 1; j <= i; j++){document.write("<span>" + j +"*"+ i +"="+ i * j +"&nbsp;" +"&nbsp;" + "</span>");}document.write("<br />");}</script><style>span{display: inline-block;width: 85px;}</style>

3.打印2 - 100之间的所有质数

  <script>for( var i = 2; i <= 100; i++){//创建一个布尔值,来保存结果,默认i是质数var flag = true;//判断i是否为质数,获取到2 - i之间的所有数for( var j = 2; j < i; j++){//判断i是否能被j整除if(i % j == 0){//如果加入判断,则证明i不是质数,修改flag值为falseflag = false;}}//如果是质数,则打印i的值if(flag){console.log(i);}}</script>

25.break和continue(K45)

不能在if语句中使用break和continue
  1.break关键字可以用来退出switch或循环语句
                   原:

 <script>for(var i = 0; i < 5; i++){console.log(i);}</script>

加入break:

 <script>for(var i = 0; i < 5; i++){console.log(i);break;}</script>

  <script>for(var i = 0; i < 5; i++){console.log(i);if(i == 2){break;}}</script>

注:break关键值字,会立即终止离他最近的那个循环语句
      tips: 可使用label为循环语句命名,在break后面跟一个label
          break将结束指定的循环,而不是最近的
  2.continue

 <script>for(var i = 0; i < 5; i++){if(i == 2){continue;}console.log(i);}</script>

注:continue关键字可以用来跳过当次循环,默认对最近循环起作用,可加label
  3.小练习(质数补充,貌似提升了性能)

<script>for( var i = 2; i <= 100; i++){var flag = true;for( var j = 2; j < i; j++){if(i % j == 0){flag = false;//一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了//使用break来结束循环break;}}if(flag){console.log(i);}}</script>

tips: 可以用console.time(“XXX”)开启一个计时器
      性能测试:
                   前:

 <script>//测试程序性能//在程序执行前,开启计时器//需要一个字符作为参数,该字符将成为计时器的标识console.time("test");for( var i = 2; i <= 100; i++){var flag = true;for( var j = 2; j < i; j++){if(i % j == 0){flag = false;//一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了//使用break来结束循环//break;}}if(flag){console.log(i);}}//终止计时器console.timeEnd("test");</script>

后:

 <script>//测试程序性能//在程序执行前,开启计时器//需要一个字符作为参数,该字符将成为计时器的标识console.time("test");for( var i = 2; i <= 100; i++){var flag = true;for( var j = 2; j < i; j++){if(i % j == 0){flag = false;//一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了//使用break来结束循环break;}}if(flag){console.log(i);}}//终止计时器console.timeEnd("test");</script>

Web初学-2022.12.03-12.09相关推荐

  1. Web初学-2022.10.15-21

    第一周笔记 一.第一集笔记 1.1 HTML.CSS系列教程内容导学 1.HTML+CSS系列教程①之拨云见日      2.HTML+CSS系列教程②之溯本求源      3.HTML+CSS系列教 ...

  2. Web初学-2022.11.19-11.25

    第五周笔记(自62开始HTML5) 51.strong和b.em和i(K112) strong和em都是表示强调的标签,表现形态为文本加粗和斜体. b和i标签同样也表示文本加粗和斜体 形如: < ...

  3. Web初学-2022.11.6-12.02

    第六周笔记(JavaScript简介) 1.简介(K1) 1.起源:JavaScript诞生于1995年,主要处理网页中的前端验证检查用户输入内容           前端验证;检查用户输入内容是否符 ...

  4. Web初学-2022.10.28-11.5

    第三周笔记 35.CSS选择器(K44-51) 1.ID 选择器         a.css:#elem{}           html:id="elem"(快捷div:div+ ...

  5. Web Wiz Forums 12.03 ASP论坛程序源码

    Web Wiz Forums是一套相当不错的免费ASP论坛程序,作者来自于英国,无论您想架设10个人或者大到100000人的强大技术支持论坛,这个快速.可设置管理权限等级的论坛程序,都足以满足您的需求 ...

  6. 7-4 房产税费计算2022(分数 12)

    7-4 房产税费计算2022(分数 12) 作者 蔡轲 单位 南昌航空大学 房屋交易在日常生活中非常常见的事情,房屋交易时要额外支付各种税费,按2022年房产交易新政策的规定买房人应缴纳税费包括: 1 ...

  7. 21.11.19 贝卡 宝贝制造者 类星体(手雷) 21.11.26 卢西恩的召唤 惊雷AAA 永田(手雷) 21.12.03 绝对征服 嗜血野兽 传输(手雷) 21.

    21.11.19 贝卡 宝贝制造者 类星体(手雷) 21.11.26 卢西恩的召唤 惊雷AAA 永田(手雷) 21.12.03 绝对征服 嗜血野兽 传输(手雷) 21.12.10 垂死之息 某人的财产 ...

  8. Daily Scrum02 12.03

    Daily Scrum03 12.03 一天过去了,新的一天即将到来,我们组仍旧干劲十足呢~ Member Today's Task Tomorrow's Task 李孟 孟神有点累了呢 task85 ...

  9. 农村科学实验杂志农村科学实验杂志社农村科学实验编辑部2022年第12期目录

    农村科学实验杂志农村科学实验杂志社农村科学实验编辑部2022年第12期目录 黑土地上书写"优粮"答卷--吉林省新农业发展纪实 (1)     吉林梨树县农技推广总站站长王贵满--& ...

最新文章

  1. [转]slf4j + log4j原理实现及源码分析
  2. OpenCV+python:模糊操作
  3. NeurIPS 2020 | 清华大学提出:通用、高效的神经网络自适应推理框架
  4. 关于ORA-06508 , ORA-04068异常的详细说明
  5. 第二百五十三节,Bootstrap项目实战-资讯
  6. 即时通讯的企业应用和个人应用的区别
  7. SpringCloud工作笔记103---Mybatis-plus使用注解 @TableField(exist = false) 注明非数据库字段属性
  8. 再次测试用OLW本地的桌面应用撰写博客园博文
  9. java自动生成函数注释_IDEA类和方法注释自动生成(2019-08-31 21:47写)
  10. php 跨域请求 header 头
  11. SolidWorks迈迪轴生成器使用注意事项
  12. 树莓派之安装Vulkan
  13. 三小时学会css(菜鸟教程精华版)【中】
  14. codeforces上的名字颜色和codeforces打比赛转载
  15. sFlow的安装和使用
  16. WLAN旁挂组网二层直连
  17. centos 7.x 更改 ipv6、numa、thp、io scheduler
  18. K线技术指标实现详解—筹码分布
  19. 通达信头肩底形态选股公式,突破波峰发出信号
  20. php怎么修改文件的内容,PHP问题:php如何修改文件内容

热门文章

  1. JS获取当前时间方法
  2. 苹果服务器响应很慢,苹果6用了一年多了,现在响应速度特别慢,有什么办法可解决...
  3. WIN10更新后指纹登录失效的解决办法
  4. 【汇编语言】32位汇编总结
  5. 计算机专业生物信息学方向怎么样,2019年生物信息学本科专业怎么样?
  6. 卸载掉mac上安装的linux,安装及卸载CrossOver for Mac
  7. Openlayers记录(四)同一图层设置不同的点符号(大小、颜色等)。
  8. 细谈静态类和实例类的区别
  9. 王者荣耀改名微信小程序源码 改空白名,重复名,符号名
  10. java如何解析nmon数据,Nmon结果文件分析