JavaScript核心语法学习部分(四)
①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核心语法学习部分(四)相关推荐
- JavaScript - 核心语法学习
1.应用场景 了解学习JavaScript语言的最核心的东西,帮助我们重新理解前端本质, 快速高效开发前端项目. 2.学习/操作 1. 文档阅读 标准库 - JavaScript 教程 - 网道 2. ...
- JavaScript核心语法学习部分(七)
获取指定位置的字符:str.charAt(index); 案例:获取身份证指定位置数字判断性别 1 var input=prompt("请输入 身份证号码:"); 2 var ch ...
- javascript基本语法学习(二)
一.JavaScript函数 1.1.函数的基本概念 在JS里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用. 虽然for循环语句也能实现一些简单的重复操作,但是比较具 ...
- JavaScript核心语法总结
1. 变量: ①先声明变量再赋值: var width; //var-用于声明变量的关键字 width = 5; //width-变量名 ②同时声明和赋值变量: var catName= " ...
- 33 个 JavaScript 核心概念系列(四): == 与 ===
原文地址:落明的博客,转载请注明出处! 一.前言 作为一个程序员,我想大家在第一次看到 a = b 的语句时一定是懵逼的.后来才知道 = 在编程语言中是用来赋值的,而不是用来判断两个值是否相等. 那该 ...
- JavaScript交互式网页设计 • 【第1章 JavaScript 基本语法】
全部章节 >>>> 本章目录 1.1 JavaScript 概述 1.1.1 JavaScript 简介 1.1.2 JavaScript 的概念和执行原理 1.1.3 J ...
- 学习Python全套代码【超详细】Python入门、核心语法、数据结构、Python进阶【致那个想学好Python的你】
大家早上好,本人姓吴,如果觉得文章写得还行的话也可以叫我吴老师.欢迎大家跟我一起走进数据分析的世界,一起学习! 感兴趣的朋友可以关注我的数据分析专栏,里面有许多优质的文章跟大家分享哦. 文末附上详细的 ...
- JavaScript学习 第四课(四)
JavaScript学习 第四课(四) 学习内容 一.JavaScript的构成 二.浏览器对象模型(Browser Object Model) 三.window对象包含的方法 四.window对象的 ...
- Maven学习总结(四)——Maven核心概念
2019独角兽企业重金招聘Python工程师标准>>> Maven学习总结(四)--Maven核心概念 一.Maven坐标 1.1.什么是坐标? 在平面几何中坐标(x,y)可以标识平 ...
最新文章
- python语言程序设计2019版第二章课后答案-《Python语言程序设计》 —2.7 课后习题...
- python将json转换为excel_使用python将Excel转换为JSON_python_酷徒编程知识库
- Kotlin静态方法定义和调用
- Python通过Zabbix API获得数据
- CSS3+JS 实现的便签应用
- iQOO 5G版8月上市,价格更加亲民!
- tableau无法建立连接_欧普照明利用 Tableau 解放数字化人才,助力企业数字化转型...
- YellowBrick-聚类评估示例
- matlab 矢量化编程(四)—— 标量函数转化为能够处理矢量的函数
- win7下cmd常用命令
- 机器字长、存储字长、存储单元的个数、存储容量
- 就知道你喜欢中文版:Spread .NET 15.2 FOR WPF
- 高德定位,只能定位一次,导航图标就消失
- curl证书过期_定时检测SSL证书过期情况并发送通知
- 旺盛型人格特征和优劣势,旺盛型性格的职业发展方向
- 计算机操做系统(十二):进程同步和互斥
- tkinterQQ音乐与音频可视化
- 通过命令行玩转Git,需要记住那些命令?
- 已知一个字符串,将字符串中的大写英文字母转变/转化成小写字母,小写字母转变为大写字母,并将转变后的字符串输出
- 腾讯短链接生成api
热门文章
- Java类的连接与初始化 (及2013阿里初始化笔试题解析)
- Play框架拾遗之五:其他知识点
- jQueryDOM操作
- VMM系列之使用VMM服务器构建 Hyper-V 主机(3)
- Distinct Subsequences@LeetCode
- 淘宝2011.9.21校园招聘会笔试题+答案
- 【唠叨两句】如何将一张树型结构的Excel表格中的数据导入到多张数据库表中...
- 删除windows上的oracle产品
- 字符串留用与字符串池
- jquery选择器,多个元素+除首个元素+出去首尾元素