一、JS-条件语句
-
条件语句
-
流程控制
-
概念
- 就是来控制我们的代码按照什么结构顺序来执行
-
分3种结构
- 顺序结构
- →A→B→
- 分支(条件)结构—if语句
- 循环结构
- A→反→yes
- 判断→NO
- 顺序结构
-
if语句
-
1-语法
- //条件成立执行代码,否则什么也不做
if (条件表达式){
//条件成立执行的代码语句
}
- //条件成立执行代码,否则什么也不做
-
2-if分支语句
- 概念
- 由上而下的过程中,根据不同的条件,执行不同的路劲代码(执行代码多选一的过程),从而得到不同得到结果
- 概念
-
3-if eles语句(双分支语句)
- 语法
- //条件成立 执行if 里面代码,否则执行里面的代码
if (条件表达式) {
//[ 如果 ] 条件成立执行的代码
} eles {
//[ 否则] 执行的代码
}
- //条件成立 执行if 里面代码,否则执行里面的代码
- 执行流程
- 语法
-
4-if eles if语句(多分支语句)
-
-
三元表达式
-
概念
- 三元表达式也能做一些简单的条件选择。有三元运算符组成的式子称为三元表达式。
-
语法
- 条件表达式?表达式1:表达式2。
-
说明
- 问号前面的位置是判断的条件,判断结果为bool型,为true时调用表达式1,为false时调用表达式2。
-
逻辑
- 其逻辑为:“如果条件表达式成立或者满足则执行表达式1,否则执行第二个。”常用在设置默认值,例如某个值不一定存在,则判断这个值是否存在,不存在给默认值(表达式2)。
-
案例
- 使用三元运算符判断一个整数是奇数还是偶数
- var a = 10;
- a%2==0?alert("偶数"):alert("奇数");
- var a = 10;
- 使用三元运算符判断一个整数是奇数还是偶数
-
-
switch 语句
-
1-概念
- 用于判断一个表达式的值,然后执行相应的语句。(可以实现多选一)
-
2-执行思路
- 利用表达式的值,来判断执行哪个语句。(简单的来说就是利用我们的表达式的值和case后面的选你选项值进行匹配
,若匹配上,就执行case语句,若都没匹配上则执行default里面的语句)
- 利用表达式的值,来判断执行哪个语句。(简单的来说就是利用我们的表达式的值和case后面的选你选项值进行匹配
-
3-语法结构
- switch(表达式){
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
……
case 常量表达式n: 语句n;
default: 语句n+1;
}- 解析
- 1.switch ----->启用当前switch语句
- 2.表达式------>一般接收具体的变量
- 3.表达式的类型必须为整型,如:byte,short,int,char
- 4.如果是jdk1.5以后,表达式的类型可以是"枚举"
- 5.如果是jdk1.7以后,表达式的类型可以是String类型 (String:是一个引用类型)
- 6.case语句---->需要将当前的case的值和switch中表达式进行比较,是否匹配
- 7.break语句—> 表示结束,中断 switch语句
- 8.default ---->case后面都不匹配,执行default
- 解析
- switch(表达式){
-
4-规则
- 1、只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则不能使用switch语句。
- 2、switch()的参数类型不能为实型 。因为switch后面只能带自动转换为整形(包括整形)的类型,比如字符型char,unsigned int等,实数型不能自动转换为整形。
- 3、case标签必须是常量表达式(constantExpression),如62或者’8’等。
- 4、case标签必须是惟一性的表达式;也就是说,不允许两个case具有相同的值
- 5、在case后,允许有多个语句,可以不用{}括起来。
- 6、各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
- 7、default子句可以省略不用。
-
-
switch语句和 if else if 语句的区别
- 1.switch语句和 if else if 语句的区别
1-一般情况下,两个语句可以相互替换;
2-switch…case 语句通常处理case为比较确定的值的情况;而if…else…语句更加灵活,常用于范围判断(大于、等于某个范围);
3-switch语句进行条件判断后直接执行到程序的条件语句,效率更高;而if…else…语句有几种条件,就得判断多少次。
4-当分支比较少时,if…else语句的执行效率比switch语句高。
5-当分支比较多时,switch语句的执行效率比较高,而且结构更清晰。
2. switch语句的注意事项
1-条件的变量与case后面变量比较的时候,是全等的比较,即必须是数值和数据类型都一致才可以;
2-如果当前的case里没有break,则不会退出switch,继续执行下一个case。
- 1.switch语句和 if else if 语句的区别
-
-
二、JS-循环语句
循环语句
-
目的
- 在实际问题中,有许多具有规律性的重复操作,因此在程序中要完成这类操作就需要重复执行某些语句
-
三种类型的循环语句
- 1-for 循环
- 2-while 循环
- 3-do...while 循环
-
1-for 循环
- 概念
- 在程序中,一组被重复的语句被称为循环体,能否继续重复执行,取决于循环的终止条件。有循环体及循环的终止条件组成的语句,被称为循环语句。
- 语法
- for(初始化变量; 条件表达式; 操作表达式 ){
//循环体
}- 初始化变量
- 通常被用于初始化一个计数器,该表达式可以使用 var 关键字声明新的变量,这个变量帮我们来记录次数。
- 条件表达式
- 用于确定每一次循环是否能被执行。如果结果是 true 就继续循环,否则退出循环。
- 操作表达式
- 每次循环的最后都要执行的表达式。通常被用于更新或者递增计数器变量。当然,递减变量也是可以的。
- 初始化变量
- for(初始化变量; 条件表达式; 操作表达式 ){
- 执行过程
- 初始化变量,初始化操作在整个 for 循环只会执行一次
- 执行条件表达式,如果为true,则执行循环体语句,否则退出循环,循环结束。
- 执行操作表达式,此时第一轮结束
- 第二轮开始,直接去执行条件表达式(不再初始化变量),如果为 true ,则去执行循环体语句,否则退出循环。
- 继续执行操作表达式,第二轮结束。
- 后续跟第二轮一致,直至条件表达式为假,结束整个 for 循环。
- 基本使用
- for (var i = 1; i <= 100; i++) {
console.log('这个人今年' + i + '岁了');
}
- for (var i = 1; i <= 100; i++) {
- 概念
-
2-while 循环
- 概念
- while是计算机的一种基本循环模式。当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环。
- 在程序中,一组被重复执行的语句被称之为循环体,能否继续重复执行,取决于循环的终止条件。由循环体及循环的终止条件组成的语句,被称之为循环语句
- 语法
- while(表达式){循环体}
- //while循环
//循环变量初始化
while(条件){
//条件体语句块
//改变循环的变量
}
//后续变量
- //while循环
- while(表达式){循环体}
- 案列
- //在页面中输出5次'我是最棒的'
- var i = 0;//循环的初始值,在开始的时候被执行一次
while(i < 5){//循环条件 如果满足循环条件,就进入大括号;进行执行
document.write('我是最棒的');//循环体,重复执行代码
i++;//增量
}
document.write('后续代码');//当循环体结束后,继续执行代码
- var i = 0;//循环的初始值,在开始的时候被执行一次
- //在页面中输出5次'我是最棒的'
- 概念
-
3-do...while 循环
- 概念
- do-while循环将先运行一次,因为经过第一次do循环后,当检查条件表达式的值时,其值为 不成立时而会退出循环。保证了至少执行do{ }内的语句一次。
- 语法
- 基本上和while是一致的。
格式:
//循环变量初始化
do{
// 循环体语句块
// 修改循环变量
} while(条件表达式)
- 基本上和while是一致的。
- 案列
- // 在页面中输出5次你真好
var i =0;
do{
document.write('我是最棒的');//循环体,重复执行的代码块
i++;//增加
}while('后续代码')//循环条件
// 注意:先执行循环体,然后判断
- // 在页面中输出5次你真好
- 概念
-
4-跳转控制
- 分类
- 在js中,有如下两种跳转语句:
1.break
2.continue
break:结束本层循环
continue:跳过(结束)本次循环,继续进入下一次循环 - 1.break
- break:结束本层循环
- for(var i =1;i<=5;i++){
if(i === 3){
continue;
}
console.log(i);//1 2 3 4 5
}
// 注意:
// 当 i=1 判断为假 执行 console.log(i) 1
// 当 i=2 判断为假 执行 console.log(i) 2
// 当 i=3 判断为真 执行 执行 continue 之后的语句不执行,执行i++
// 当 i=4 判断为假 执行 console.log(i) 4
// 当 i=5 判断为假 执行 console.log(i) 5
// 当 i=6 循环结束
- for(var i =1;i<=5;i++){
- break:结束本层循环
- 2-continue
- continue:跳过(结束)本次循环,继续进入下一次循环
- for(var i =1;i<=5;i++){
if(i === 3){
break;
}
console.log(i);//1, 2
}
// 当 i=1 判断为假 执行 console.log(i) 1
// 当 i=2 判断为假 执行 console.log(i) 2
// 当 i=3 判断为真 执行 break;
// 结束整个循环
- for(var i =1;i<=5;i++){
- continue:跳过(结束)本次循环,继续进入下一次循环
- 在js中,有如下两种跳转语句:
- 分类
循环语句-2
-
三、多重循环
-
1-概念
- 因为我们在平时写功能的时候会,出现一种情况我们使用一层循环是做不出来的,所以这是就出现了多层的循环。
- 在实际的开发中,经常需要用到多重循环,尤其是二重循环。 不管是while还是for都可以实现二重循环,但是一般使用for比较多。
- 很多情况下,单层 for 循环并不能满足我们的需求,比如我们要打印一个 5 行 5列的图形、打印一个倒直角三角形等,此时就可以通过循环嵌套来实现。
- 循环嵌套是指在一个循环语句中再定义一个循环语句的语法结构,例如在for循环语句中,可以再嵌套一个for 循环,这样的 for 循环语句我们称之为双重for循环。
-
2-双重 for 循环语法
- for (外循环的初始; 外循环的条件; 外循环的操作表达式) {
for (内循环的初始; 内循环的条件; 内循环的操作表达式) {
需执行的代码;
}
}
1.内层循环可以看做外层循环的语句
2.内层循环执行的顺序也要遵循 for 循环的执行顺序
3.外层循环执行一次,内层循环要执行全部次数打印五行五列星星
- for (外循环的初始; 外循环的条件; 外循环的操作表达式) {
-
-
3-continue 关键字
- 1、使用场景
- 退出循环或者switch语句。只有当它出现在这些语句时,这种形式的break语句才是合法的。
- 2、作用
- 用于立即跳出本次循环,继续下一次循环
- 1、使用场景
-
4-break 关键字
- 1、使用场景
- 只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!
- 2、作用
- 结束本次的循环,直接进行下一次的循环
- 1、使用场景