当前位置: 首页 > news >正文

【前端从0开始】JavaSript——分支流程控制

流程控制

在任何一门程序设计语言中,都需要支持满足程序结构 化所需要的三种流程控制:
●顺序控制
●分支控制(条件控制)
●循环控制
顺序控制:在程序流程控制中,最基本的就是顺序控制。程序会按照自上而下的顺序执行。

分支流程控制

●if语句
●switch语句

if语句【重要】

分类:单分支,双分支,多分支,分支嵌套

// 单分支
if (条件表达式){代码段
}
// 双分支
if (条件表达式) {代码段1 
}else {代码段2
}
// 多分支
if (条件表达式1){代码段1
} else if (条件表达式2){代码段2
} else if (条件表达式3){代码段3
}else{代码段4
}

()中可以是一个值,也可以是一个表达式

// 判断成绩是否及格
// 单分支
var score = 78;
if(score>=60 && score<=100){console.log('及格');
}// 双分支
if(score>=60 && score<=100){console.log('及格');
}else{console.log('不及格');
}
// 双分支 改写 三元运算符
var res = score>=60&& score<=100?'及格':'不及格';
console.log(res);// 多分支
var score = 59;
if(score>=60 && score<=100){console.log('及格');
}else if(score>=0 && score<=59){console.log('不及格');
}else{console.log('输入错误!');
}// 分支嵌套
var score = 59;
if(score>=60 && score<=100){if(score>=85){console.log('优秀');}else if(score>=75){console.log('良好');}else{console.log('中等');}
}else if(score>=0 && score<=59){console.log('不及格');
}else{console.log('输入错误!');
}

Switch【掌握】

switch (变量){case1: 代码段;break;case2: 代码段;break;...default: 代码段;
}

()只能是变量或值,不能是表达式

var d = new Date();
console.log(d); // 获取日期时间对象
var week = d.getDay(); // 获取星期几
switch (week) {case 0:console.log('星期天');break;case 1: console.log('星期一');break;case 2:console.log('星期二');break;case 3:console.log('星期三');break;case 4:console.log('星期四');break;case 5:console.log('星期五');break;case 6:console.log('星期六');break;
}

对比:什么时候用if,什么时候用switch

if:条件是一个范围 或者 是具体的值
switch:条件是一个具体的值
能够使用switch实现的判断,都可以使用if来实现
但是,能够使用if语句实现的判断,不一定能使用switch实现

案例:小游戏

<button id='btn1'>唱歌</button><button id='btn2'>讲故事</button><button id='btn3'>说英语</button>
</body>
<script>var btn = document.getElementsByTagName('button');for(var i=0;i<btn.length;i++){// console.log(btn[i]);btn[i].onclick = function(){// this 点击的是谁,获取的就是谁// console.log(this);// if(this.innerText=='唱歌'){//     console.log('两只老虎。。。。');// }else if(this.innerText=='说英语'){//     console.log('ABCDEFG。。。。');// }else if(this.innerText=='讲故事'){//     console.log('从前有个山。。。。');// }switch(this.innerText){case '唱歌':console.log('两只老虎。。。。');break;case '说英语':console.log('ABCDEFG。。。。');break;case '讲故事':console.log('从前有个山。。。。');break;}}}
</script>
http://www.lryc.cn/news/136292.html

相关文章:

  • Linux权限
  • PMP如何备考?学习方式这里有
  • 【Java转Go】快速上手学习笔记(四)之基础篇三
  • vue中form和table标签过长
  • java基础复习(第七日)
  • day24 | 理论基础、77. 组合
  • 数据结构(1)
  • 10个非常有用的Python库,你知道几个?
  • linux安装 MySQL8 并配置开机自启动
  • MySQL视图
  • Pytorch-day05-可视化-checkpoint
  • 实训笔记8.23
  • 2023年菏泽市中职学校技能大赛“网络安全”赛项规程
  • Android 13 - Media框架(6)- NuPlayer
  • 机器学习|DBSCAN 算法的数学原理及代码解析
  • 用NUXT.JS,轻松搞定SEO!
  • 什么是电商RPA?电商RPA能解决什么问题?电商RPA实施难点在哪里?
  • 【BUG】Docker启动MySQL报错
  • Spring Boot通过企业邮箱发件被Gmail退回的解决方法
  • Windows使用MobaXterm远程访问ubuntu20.04桌面
  • C++注释风格
  • Linux 编译内核模块出现--Unknown symbol mcount
  • Pywin32 Cookbook by Eric
  • indexDB入门到精通
  • Ubuntu 20.04配置静态ip
  • Tushare入门小册
  • <c++开发>通信工具 -之-SOME/IP移植部署 第一篇文章
  • 权威的软件测试服务供应商分享,怎么获得软件安全检测报告?
  • 管理类联考——逻辑——真题篇——按知识分类——汇总篇——二、论证逻辑——假设——第二节——搭桥假设
  • 百度云BOS云存储的图片如何在访问时,同时进行格式转换、缩放等处理