①switch-case语句

switch...case... 多条分支,根据条件判断,选择执行。

语法:

switch(表达式){
  case 表达式1://如果表达式的值===表达式1的值就执行代码段1;
  代码段1;

  case 表达式2:

  代码段2;

  case 表达式n:

  代码段n;

  default://如果表达式的值和所有的case都不相等,执行默认代码段;

  默认代码段;

}

流程结构图:

 案例:分段显示分数

 1     var score=parseInt(prompt("请输入分数:"));
 2     switch (true){
 3         case score>=90:
 4         console.log("A");
 5         case score>=80:
 6         console.log("B");
 7         case score>=60:
 8         console.log("C");
 9         default:
10         console.log("D");
11     }

运行机制:如果找到与表达式值匹配的case,不但执行当前case下的代码,而且之后所有代码都被触发。

break:退出当前结构;

不加break:多个条件共用同一套执行逻辑时。

注意:表达式的值和条件值是严格相等。

案例1:switch...case语句

 1 var num=parseInt(prompt("请输入服务种类:"));
 2 switch (num){
 3         case 1:
 4         console.log("余额查询中");
 5         break;
 6         case 2:
 7         console.log("取款进行中");
 8         break;
 9         case 3:
10         console.log("转账进行中");
11         break;
12         default:
13     }

如果将parseInt去掉,或者是在case后面的值加上双引号,不会输出,严格相等包含值相等和数据类型相等。

案例2:if else 语句实现

 1     var num=parseInt(prompt("请输入服务种类:"));
 2     if(num===1){
 3         console.log("余额查询中")
 4     }else if(num===2){
 5         console.log("取款进行中")
 6     }else if (num===3){
 7         console.log("转账进行中")
 8     }else{
 9         console.log("您输入的有误,请重新输入")
10     };

②循环结构

循环结构:程序反复执行同一套代码段,但是遇到结束条件会结束执行。如果没有循环条件,永远循环执行——死循环

循环结构三要素:

a.循环条件——重复执行的次数,或者继续执行循环的条件。一旦循环条件不满足,循环立即退出!

b.循环变量——用于循环条件中做判断的变量,循环变量都会想循环退出的趋势变化(不满足循环条件的趋势)——循环计数器

c.循环体——要执行的相同或相似的语句,即每次循环要做的事情。

while循环

当满足条件时,就继续循环做...事情。

语法:

var 循环变量;

while(循环条件){

  循环体;

  迭代变化循环变量;

}

break:用户循环体中跳出循环,退出当前结构。

while何时使用break:循环条件不满足之前,希望强行退出循环。

如何使用break?客户放在任何需要退出循环的位置。

案例1:小火车转圈

 1     var round=0;
 2     while(round<3){
 3         if(round==2){
 4             console.log("晕");
 5             break;
 6         }
 7         console.log("转一圈");
 8         round+=1;
 9     }
10     console.log("停车");

 案例2:猜数游戏

 1     var n=10
 2     var input=-1
 3     while(input!=n){
 4         input=prompt("请输入数字:")
 5         if(input!=""){
 6         if(input=="exit"){
 7             console.log("放弃了")
 8             break;
 9         }else{
10         input=parseInt(input);
11         if(n>input){
12         alert("您输入小了");
13     }else if(n<input){
14         alert("您输入大了");
15     }else{
16         alert("恭喜您猜对了")
17     }
18     }
19 }
20 };

随机数:Math.random():0<=n<1

任意min——max取随机数

公式:parseInt(Math.random()*(man-min+1)+min)

案例3:猜数游戏(答案不固定)

 1     var n=parseInt(Math.random()*(10-0+1)+0);
 2     var input=-1
 3     while(input!=n){
 4         input=prompt("请输入数字:")
 5         if(input!=""){
 6         if(input=="exit"){
 7             console.log("放弃了")
 8             break;
 9         }else{
10         input=parseInt(input);
11         if(n>input){
12         alert("您输入小了");
13     }else if(n<input){
14         alert("您输入大了");
15     }else{
16         alert("恭喜您猜对了")
17     }
18     }
19 }
20 };

 do while循环

语法:

var 循环变量;

do{

  循环体;

  迭代变换循环变量;

}while(循环条件);

do-while循环:先执行一次循环体,再判断是否继续!

如果循环条件不满足,循环体至少可以执行一次!

案例:猜数字游戏

 1     var n=parseInt(Math.random()*(10-0+1)+0);
 2     var input=-1
 3     do{input=prompt("请输入数字:")
 4         if(input!=""){
 5         if(input=="exit"){
 6             console.log("放弃了")
 7             break;
 8         }else{
 9         input=parseInt(input);
10         if(n>input){
11         alert("您输入小了");
12     }else if(n<input){
13         alert("您输入大了");
14     }else{
15         alert("恭喜您猜对了")
16     }
17     }
18 }
19 }
20 while(input!=n);

说明:var放在{}内外均可,因为此变量是全局作用域。作用域只分为全局作用域和函数作用域,此处没有函数。

 变量声明提前:相同作用域内,var无论出现在什么位置,解析时优先提取到js开始位置声明!

while vs do-while:

如果第一次条件就可能不满足,也想执行一次,必须用do-while

如果第一次条件一定满足,while等同于do while

for循环:

完全等效于while循环。

循环变量变化规律固定,循环次数已知/固定。

语法:

for(声明并初始化循环变量;循环条件;迭代循环变量){

  循环体;

}

案例1:1+2+3+...+100计算写法1

1     for(var i=1,sum=0;i<=100;i++){
2         sum+=i;
3     }
4     console.log(sum);

 案例2:1+2+3+...+100计算写法2

1     for(var i=1,sum=0;i<=100;sum+=i++){
2     }
3     console.log(sum);

break;用于强行退出当前结构;

continue:跳过本轮循环,继续执行下一轮循环。

 案例1:从2000年开始找出5个闰年

1     var count=0;
2     var year=2000;
3     while(count<5){
4         if((year%4==0&&year%100!=0)||(year%400==0)){
5             console.log(year);
6             count++;
7         }
8         year++;
9     }; 

 案例2:打印九九乘法表

1 for(var n=1;n<=9;n++){
2          var str="";
3      for(var i=1;i<=n;i++){
4          str+=i+"*"+n+"="+(i*n)+" ";
5      }
6      console.log(str);
7 };

案例3:计算平均数(要求输入班级分数,输入-1停止并打印平均分数)

 1     var sum=0;
 2     var count=0;
 3     do{var input=parseInt(prompt("请输入成绩:"));
 4     if(input=="-1"){
 5         break;
 6     }else{
 7         count++;
 8         sum+=input;
 9     }
10     }while(true);
11     console.log("平均分:"+(sum/count).toFixed(2));

案例4:“水仙花数”查找(在100到999查找水仙花数)

1     for(var num=100;num<=999;num++){
2         var hd=parseInt(num/100);
3         var ten=parseInt(num%100/10);
4         var one=num%10;
5         if(num==hd*hd*hd+ten*ten*ten+one*one*one){
6             console.log(num);
7         }
8     };

转载于:https://www.cnblogs.com/Angche/p/7469572.html

JavaScript核心语法学习部分(四)相关推荐

  1. JavaScript - 核心语法学习

    1.应用场景 了解学习JavaScript语言的最核心的东西,帮助我们重新理解前端本质, 快速高效开发前端项目. 2.学习/操作 1. 文档阅读 标准库 - JavaScript 教程 - 网道 2. ...

  2. JavaScript核心语法学习部分(七)

    获取指定位置的字符:str.charAt(index); 案例:获取身份证指定位置数字判断性别 1 var input=prompt("请输入 身份证号码:"); 2 var ch ...

  3. javascript基本语法学习(二)

    一.JavaScript函数 1.1.函数的基本概念 在JS里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用. 虽然for循环语句也能实现一些简单的重复操作,但是比较具 ...

  4. JavaScript核心语法总结

    1. 变量: ①先声明变量再赋值: var width; //var-用于声明变量的关键字 width = 5; //width-变量名 ②同时声明和赋值变量: var catName= " ...

  5. 33 个 JavaScript 核心概念系列(四): == 与 ===

    原文地址:落明的博客,转载请注明出处! 一.前言 作为一个程序员,我想大家在第一次看到 a = b 的语句时一定是懵逼的.后来才知道 = 在编程语言中是用来赋值的,而不是用来判断两个值是否相等. 那该 ...

  6. JavaScript交互式网页设计 • 【第1章 JavaScript 基本语法】

    全部章节   >>>> 本章目录 1.1 JavaScript 概述 1.1.1 JavaScript 简介 1.1.2 JavaScript 的概念和执行原理 1.1.3 J ...

  7. 学习Python全套代码【超详细】Python入门、核心语法、数据结构、Python进阶【致那个想学好Python的你】

    大家早上好,本人姓吴,如果觉得文章写得还行的话也可以叫我吴老师.欢迎大家跟我一起走进数据分析的世界,一起学习! 感兴趣的朋友可以关注我的数据分析专栏,里面有许多优质的文章跟大家分享哦. 文末附上详细的 ...

  8. JavaScript学习 第四课(四)

    JavaScript学习 第四课(四) 学习内容 一.JavaScript的构成 二.浏览器对象模型(Browser Object Model) 三.window对象包含的方法 四.window对象的 ...

  9. Maven学习总结(四)——Maven核心概念

    2019独角兽企业重金招聘Python工程师标准>>> Maven学习总结(四)--Maven核心概念 一.Maven坐标 1.1.什么是坐标? 在平面几何中坐标(x,y)可以标识平 ...

最新文章

  1. python语言程序设计2019版第二章课后答案-《Python语言程序设计》 —2.7 课后习题...
  2. python将json转换为excel_使用python将Excel转换为JSON_python_酷徒编程知识库
  3. Kotlin静态方法定义和调用
  4. Python通过Zabbix API获得数据
  5. CSS3+JS 实现的便签应用
  6. iQOO 5G版8月上市,价格更加亲民!
  7. tableau无法建立连接_欧普照明利用 Tableau 解放数字化人才,助力企业数字化转型...
  8. YellowBrick-聚类评估示例
  9. matlab 矢量化编程(四)—— 标量函数转化为能够处理矢量的函数
  10. win7下cmd常用命令
  11. 机器字长、存储字长、存储单元的个数、存储容量
  12. 就知道你喜欢中文版:Spread .NET 15.2 FOR WPF
  13. 高德定位,只能定位一次,导航图标就消失
  14. curl证书过期_定时检测SSL证书过期情况并发送通知
  15. 旺盛型人格特征和优劣势,旺盛型性格的职业发展方向
  16. 计算机操做系统(十二):进程同步和互斥
  17. tkinterQQ音乐与音频可视化
  18. 通过命令行玩转Git,需要记住那些命令?
  19. 已知一个字符串,将字符串中的大写英文字母转变/转化成小写字母,小写字母转变为大写字母,并将转变后的字符串输出
  20. 腾讯短链接生成api

热门文章

  1. Java类的连接与初始化 (及2013阿里初始化笔试题解析)
  2. Play框架拾遗之五:其他知识点
  3. jQueryDOM操作
  4. VMM系列之使用VMM服务器构建 Hyper-V 主机(3)
  5. Distinct Subsequences@LeetCode
  6. 淘宝2011.9.21校园招聘会笔试题+答案
  7. 【唠叨两句】如何将一张树型结构的Excel表格中的数据导入到多张数据库表中...
  8. 删除windows上的oracle产品
  9. 字符串留用与字符串池
  10. jquery选择器,多个元素+除首个元素+出去首尾元素