【JavaScript】if分支语句
创始人
2024-04-23 12:53:06
0

文章目录

  • 一、if分支语句
    • if分支语句的语法结构
      • 1、单分支
      • 2、双分支
      • 3、多分支
    • if分支语句的应用
    • 总结if的特点

一、if分支语句

if分支语句的语法结构

语法结构有三种(单分支,双分支,多分支)
重点内容1:必须熟悉布尔值真假情况(0,‘’,null,undefined,NaN,false)
重点内容2:if的条件可以是任意的表达式,但是结果一定是布尔值,系统自动调用Boolean方法进行处理。

1、单分支

**语法: **if(条件){满足条件(条件为真时)执行的语句块}

if (1) {console.log('语句会执行');}if ('饿了困了') {console.log('喝东鹏特饮');}if (false) {console.log('我也想出来转转');}/* isNaN函数会首先尝试将这个参数转换为数值,然后才会对转换后的结果是否是NaN进行判断。 */var num = prompt('请输入数字:');if (!isNaN(num)) { //是数字console.log('你输入的是数字:' + num);}

2、双分支

**语法:**if(条件){ 满足条件(条件为真)执行的语句块 } else { 不满足条件(条件为假)执行的语句块 }

var num = prompt('请输入数字:');if (!isNaN(num)) { //是数字alert('你输入的是数字:' + num);} else {alert('你输入的不是一个数字');/* 案例:输出数字,判断数字是奇数还偶数(if语句的嵌套:if语句
里面存在if语句) */var num = prompt('请输入数字:'); //prompt里面输入的内容都是字符串格式的if (!isNaN(num)) { //是数字执行这里   isNaN将字符串格式的数字转换成数字// 继续判断数字是奇数还是偶数if (num % 2 === 0) { //偶数alert('你输入的数字' + num + '是偶数');} else { // 奇数alert('你输入的数字' + num + '是奇数');}} else { //不是数字执行这里alert('你输入的不是一个数字');}

3、多分支

**语法:**if (条件1) {条件1为真执行的语句块}
else if(条件2) {条件2为真执行的语句块}
else if(条件3) {条件3为真执行的语句块}
else if(条件4) {条件4为真执行的语句块}
else if(条件5) {条件5为真执行的语句块}

// 案例:输出数字,判断数字>0/<0/=0var num = prompt('请输入数字:');if (num === '') {console.log('你没有输入内容');} else if (num > 0) {console.log('是一个正数');} else if (num < 0) {console.log('是一个负数');} else if (num == 0) {console.log('是数字0');} else {console.log('输入有误');}

if分支语句的应用

**案例1:**使用 prompt 函数 接收一个年份 判断输入的年份 是否是闰年 将结果输出到控制台, 闰年条件:能够被4整除,同时不能够被100整除,或者能被400整除。

if (year !== '') { //最大的可能不为空if (!isNaN(year)) { //判断是数字,if (year >= 1000 && year <= 9999) { //同时是4位的数字if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) { //是否闰年alert('闰年');} else {alert('非闰年');}} else {alert('你输入的数字不在范围内');}} else { //输入的内容不满足条件alert('输入不是数字,请重新输入');}} else {alert('请输入')}

**案例1拓展:**合并条件

if (year !== '' && !isNaN(year) && (year >= 1000 && year <= 9999) && (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0)) {alert('闰年')} else {alert('你可能没有输入,可能不是数字,可能不在范围内,可能不是闰年');}

**案例2:**根据公式(身高-108)*2 = 体重,可以有10斤左右的浮动,来观察测试者体重是否标准(身高:cm)
// 思路:
// 结果:标准,偏胖,偏瘦(三个条件)
// 偏胖:大于 (身高-108) * 2 + 10
// 偏瘦:小于 (身高-108) * 2 - 10
// 标准:区间

 var height = prompt('请输入身高cm:');var weight = prompt('请输入体重斤');var maxWeight = (height - 108) * 2 + 10;var minWeight = (height - 108) * 2 - 10;if (weight > maxWeight) {alert('偏胖');} else if (weight <= maxWeight && weight >= minWeight) { //标准,区间alert('标准身材');} else if (weight < minWeight) {alert('偏瘦');} else {alert('输入有误');}

总结if的特点

1.if的三种结构(单分支,双分支,多分支)
2.if的条件可以是任意的表达式,但是结果一定是布尔值,系统自动调用Boolean方法对表达式进行求值。
3.if语句满足一个分支,立刻结束
4.尽量将最大的可能给if语句,如果满足if,else短路操作(代码不执行),同时else可以省略。
5.合并条件,提示错误或者其他信息的时候就不够准确。嵌套使用,提升用户体验,多条件使用,减少代码。

// 解析
//     输入数字4,执行四次条件
//     输入数字3,执行三次条件
//     输入数字1,执行一次条件
//     输入数字5,执行五次条件
//     一旦找到目标,立刻结束var num = +prompt('请输入一个数字:');if (num === 1) {console.log(1);} else if (num === 2) {console.log(2);} else if (num === 3) {console.log(3);} else if (num === 4) {console.log(4);} else {console.log('其他情况');}

相关内容

热门资讯

Vuejs设计与实现7-组件实... 九、组件实现原理 渲染组件 一个组件内部必须要使用 render 进行渲染,且返回虚拟...
Xxx综合业务平台巡检记录 附件一:运维台账Xxx综合业务平台巡检记录 用    户: xx省交...
gitlab-ci.yml关键... inherit 示例 inherit:default 选择当前作业继承的全局默认值 可能的取值 tr...
期货是衍生产品(期货衍生产品法... 期货算衍生品吗? 国外金融网站都将商品期货归纳为商品(COMMODITY),是和股票、...
安装运行Hyperf 上回讲到,我们对一个普通的 Laravel 框架进行了改造,让它可以在 ...
Python编程实例-深入了解... 深入了解Python多线程 文章目录 深入了解Python多线程1、Python中的线程2、启动...
阿里云云计算高级工程师ACP认... 阿里云云计算高级工程师ACP认证(Alibaba Cloud Certified Pr...
051-对象流ObjectIn... 【上一讲】050-Java中DataInputStream和DataOutputStream使用详解...
c++算法基础必刷题目——指针... 文章目录指针优化1、月月查华华的手机 指针优化 1、月月查华华的手机 NC23053 月月查华华的手...
python中的各种路径设置 python中的各种路径设置 python永久添加搜索路径_Python sys.path永久添加 ...