JS流程控制语句

JavaScript流程控制语句

流程控制语句

很多编程语言学习过程中,前期较为枯燥无聊.主要是因为做不出来啥东西
但是从流程控制开始就好些
	1.代码更具有逻辑性
	2.代码内容更有趣,可以做些小案例
	3.学习难度有上升
编程源自于生活,结合生活例子来理解代码思路

程序的三种流程:
	1.顺序执行: 程序代码从左往右,从上往下依次执行,遇到报错停止
	2.选择执行: 判断条件是否满足,执行对应功能,走向不同的分支
	3.循环执行: 判断条件是否满足,重复执行对应代码. 复读机

条件判断是基于布尔类型进行判断
本节课逻辑和python一样,但语法不同,不要搞混

代码块权限

在python中,代码块权限是通过缩进来控制:
	阿宸
	婷婷
	玫玫

在JavaScript中,代码块权限是用大括号来表示, 适当缩进控制排版
小悦{
	陈笙
	默契
	木马
}

在js中,如果只有一行语句,可以不用加大括号. 一般为了规范,还是会加上

分支语句(if)

if语句的作用为'条件判断' -- 根据判断结果,执行对应语句
	if : 如果
	else : 否则
	else if : 或者

1.单分支语句(如果/if) 满足条件执行if代码,不满足无事发生
	语法:
		if(判断条件){
			执行语句
		}
	案例:
		let age = 28
		if(age >= 18){
			document.write('成年了,要懂事听话了')
		}

2.双分支语句(如果/或者 if/else) 满足条件执行if代码,不满足执行else代码
	语法:
		if(判断条件){
			执行语句
		}else{
			执行语句
		}
	案例:	
		let num = Number(prompt('请输入考试成绩'))
    	if(num >=90){
			document.write('考得不错,带你下馆子')
		}else{
			document.write('下次加油,这次先带你买零食')
		}

3.多分支语句(如果/或者/否则 if/else/else if) 满足条件执行if/else if代码,都不满足执行else代码
	语法:
		if(判断条件){
			执行语句
		}else if(判断条件){
			执行语句
		}else{
			执行语句
		}
	案例:
		let num = Number(prompt('请输入考试成绩'))
		if(num == 100){
			document.write('很棒,带你去饮茶')
		}else if(num >= 80){
			document.write('考的不错,去吃火锅')
		}else if(num >= 60){
			document.write('及格了,去吃沙县大酒店')
		}else{
			document.write('发挥失常,下次多注意,加油,带你去吃kfc吧')
		}

tips:
	1.写分支语句时,可以结合 &&(and) ||(or)  !(not)  逻辑运算符
	2.一组分支只有一个if/else.  else if可以有多个
	3.写多分支时,注意书写顺序
	4.在判断时,有值为真,无值为假
		0  0.0  null  undefined ''  都为flase

选择分支语句(switch)

switch 也是进行条件判断,它是基于同一事件处于不同值/状态时的判断
简单来说,switch是做选择用的,不适合做复杂选项
	case - 选择  break - 结束   default - 默认(相当于else)

语法:
	switch(数据){
		case 情况1:
			代码
		break
		case 情况2:
			代码
		break
		default:
			代码
		break
	}

等价于:
	if 数据 == 情况1
	elif 数据 == 情况2
	elif 数据 == 情况3
	else

tips: 
	1.switch括号里的数据,正式叫法是表达式,它对数据要求更精准,所以隐式类型转换无效
	2.switch穿透机制. 程序运行时,遇到break才停止,没遇到break前会一直执行下去,有时候就可以利用这个机制
	3.switch和if的区别: 如果你要判断的数据精确且有关联性,连续性.  switch做选择更高效 if做判断更合适
	4.case一次只能有一个值

while循环

循环的目的是为了减少重复代码,提高开发/运行效率
循环语句基于条件判断执行. 条件为真/满足时,循环执行.  为假/不满足时,循环结束

生活中的循环:
	单曲循环 / 抄作业 / 跑圈

语法:
	while(循环条件){
		执行语句
		更新条件
	}

	let num = 1
	while(num <= 100){
		console.log(`这是我喝的第${num}杯热水`)
		num++
	}

!!! js一般运行在浏览器里. 不要随便写死循环,可能会把浏览器卡死

do while循环

语法:
do{
	执行语句
}while(循环条件)

用法和while类似. do while执行流程: 先运行一遍执行语句,再判断循环条件
do while -- 先执行一次再判断 -- 注册/登录
while循环可能会被跳过,不会执行.   do while至少会执行一次

break与continue

break 心软的麒麟
	循环遇到break时,就会终止

有天,阿宸老师犯错误了,七零为了惩罚他,罚他抄<出师表>100遍
阿宸老师抄到70次的时候手抽筋了. 七零于心不忍,就让他停了. break
let num = 1
    while(num <= 100){
        console.log(`这是阿宸老师抄的第${num}遍出师表`)
        num++
        if(num == 70){
            console.log('阿宸老师手抽筋了,算了算了. 下次注意,不要犯错误了')
            break
        }
    }

continue 粗心的麒麟
	当循环遇到continue时会跳过,进入到下次循环
一整本寒假作业,那么多页.我<不小心>看漏了几页没写. 很合理
	let page = 0
	while(page < 100){
		page++
		if(page == 70 || page == 29 || page == 55 || page == 13){
			continue
		}
		document.write(`这是第${page}页作业<br>`)
	}

for循环

迭代循环 -- 循环次数已知 / 遍历数据时. 用for会更高效

for(初始化变量;循环条件;更新操作;){
	执行语句
}

for(let i=1; i<=10 ;i++){
	console.log(i,'多喝热水')
}

//十行十列的爱心
// 内循环输出十个爱心 -- 内循环结束 -- 换行
// 外循环把上面操作执行10次
for(let i=1; i<=10 ;i++){
    for(let j=1; j<=10 ;j++){
	    document.write('❤')
    }
	document.write('<br>')
}

练习

输入一个(1~12)数字,判断属于哪个季节	
用JavaScript实现九九乘法表(三角形)
用if和while写一个登录系统.输入失败超过3次就结束程序.
用if写一个猜拳游戏.对方默认出石头
打印一个10*10空心矩形 (只有框)
有对情侣.请输入双方的年龄.判断两者是否能够结婚 (法定结婚年龄男方22岁 女方20岁)
用switch,实现一个计算器(加减乘除) --> case的参数为+-*/.
	case '+':
	case '-'.	

猜数字游戏(用python写)
  • 9
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值