目录
2.1 if 分支语句 、 if - else分支语句、if - else if -else多分支语句
2.4 switch 语句 和 if - else if - else 语句的区别
一、JavaScript运算符
注: 算术运算使用的符号,用于执行两个变量或值的算术运算。
1.1 常见的几种算术运算符
注:
浮点数值的最高精度是 17 位小数,但在进行算术计算时其精确度远远不如整数。
浮点数参与运算,会有精度问题,会有误差。所以不能用浮点数参与比较(是否相等)
1.2 表达式和返回值
表达式:是由数字、运算符、变量等以能求得数值的有意义排列方法所得的组合(也就是由数字、运算符、变量等组成的式子)
返回值:表达式最终都会有一个结果,返回给我们,我们称为返回值。
1.3 递增运算符
如果需要反复给数字变量添加或减去1,可以使用递增(++)和递减( -- )运算符来完成。
在 JavaScript 中,递增(++)和递减( -- )既可以放在变量前面,也可以放在变量后面。
放在变量前面时, 我们可以称为前置递增(递减)运算符
放在变量后面时,我们可以称为后置递增(递减)运算符。
( ※ 注意: 递增和递减运算符 必须和变量配合使用。 )
1)前置递增运算符 (++变量名)
使用口诀:先变量自加1,后表达式返回现值 (变量和表达式的值是同步)
2)后置递增运算符 (变量名++)
使用口诀:表达式先返回原值(变量的原值),后变量自加1
如果单独使用++num; 或 num++; ,使用效果是一样的。
3)递增运算符练习
4)小结
1.4 比较运算符
比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true / false)作为比较运算的结果 。
1)比较运算符练习
2)等号小结
1.5 逻辑运算符
逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。
后面开发中经常用于多个条件的判断。
1)逻辑运算符口诀
与 一假全假 全真才真
或 一真就真 全假才假
2)逻辑运算符练习
3)短路运算(逻辑中断)
短路运算的原理很重要!!!!!!:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值。
(1)逻辑与 短路运算
(2)逻辑或 短路运算
(3)小结:什么时候返回 表达式1 呢?
逻辑与: 表达式1 为假的时候
逻辑或: 表达式1 为真的时候
1.6 赋值运算符
用来把数据赋值给变量的运算符。
1.7 运算符的优先级
练习 :
二、流程控制
在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的。很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能。
流程控制主要有三种结构,分别是顺序结构、分支结构和循环结构,这三种结构代表三种代码执行的顺序。
2.1 if 分支语句 、 if - else分支语句、if - else if -else多分支语句
1)if 分支语句
案例:
2)if - else分支语句
案例1:可以进入网吧吗
案例2 :判断闰年
案例3:是否中奖
3)if - else if - else 分支语句
注意:
(1) 多分支语句还是多选1 , 最后只能有一个语句执行
(2) else if 里面的条件理论上是可以任意多个的
(3) else if 中间有个空格哦
案例:判断成绩级别
1. 90分(含)以上 , 输出:宝贝,你是我的骄傲2. 80分(含)~ 90 分(不含), 输出:宝贝,你已经很出色了3. 70分(含)~ 80 分(不含), 输出:你要继续加油喽4. 60分(含)~ 70 分(不含), 输出:孩子,你很危险5. 60分(不含) 以下, 输出: 熊孩子,我不想和你说话
2.2 三元表达式
有三元运算符组成的式子我们称为三元表达式。三元表达式的符号 ? :
(一元表达式++num 二元表达式3 + 5 )
1)语法结构
条件表达式 ? 表达式1 : 表达式2
2)执行思路
如果条件表达式结果为真 则 返回 表达式1 的值
如果条件表达式结果为假 则 返回 表达式2 的值
3)代码体验
4)案例: 数字前面补0
用户输入0~59之间的一个数字
如果数字小于10,则在这个数字前面补0,(加0 字符串的拼接) ,否则 直接输出这个数字
2.3 switch 语句
switch 语句也是多分支语句,也可以实现多选1,它用于基于不同的条件来执行不同的代码。
当要针对变量设置一系列的特定值的选项时,就可以使用 switch。
1)语法结构
switch : 转换、开关
case :小例子或者选项的意思
switch (表达式) {
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
...
default:
执行最后的语句;
}
2)执行思路
用表达式的值 和 case 后面的选项值来相匹配:
如果匹配上,就直接执行该case 里面的语句 ;
如果都没有匹配上,那么执行 default里面的语句。
3)注意事项
1. 在开发里面 ,表达式我们经常写成变量
2. 变量 的值 和 case 里面的值相匹配的时候是 全等 : 必须是值和数据类型一致才可以 (===)
3. break :如果当前的case里面没有break ,则不会退出switch ,会继续执行下一个case
4)案例:查询水果
思路:
1、弹出 prompt 输入框,让用户输入水果名称,把这个值取过来保存到变量中。
2、将这个变量作为 switch 括号里面的表达式。
3、 case 后面的值写几个不同的水果名称,注意一定要加引号 ,因为必须是全等匹配。
4、在每一个case中写执行的语句,弹出不同价格即可。
5、将 default 设置为:此类水果本店没有售卖,故查询不到价格信息。
注意每个 case 之后加上 break ,以便退出 switch 语句。
2.4 switch 语句 和 if - else if - else 语句的区别
2.5 课后作业
作业1:判断所处时间段
<script>
var time_num = prompt('请输入整点的时间(0~24),以判断处于一天的哪个阶段:');
if (time_num >= 0 && time_num <= 3) {
alert('现在是凌晨哦');
}
else if (time_num >= 4 && time_num <= 5){
alert('现在是黎明哦');
}
else if (time_num >= 6 && time_num <= 8){
alert('现在是早晨哦');
}
else if (time_num > 8 && time_num <= 11){
alert('现在是上午哦');
}
else if (time_num > 11 && time_num <= 13){
alert('现在是中午哦');
}
else if (time_num >= 14 && time_num <= 17){
alert('现在是下午哦');
}
else if (time_num >= 18 && time_num <= 22){
alert('现在是晚上哦');
}
else {
alert('现在是午夜哦');
}
</script>
作业2:比较两个数的大小,输出较大的数
<script>
var num1 = prompt('请输入要比较的第一个数:');
var num2 = prompt('请输入要比较的第二个数:');
if( num1 > num2 ) {
alert('第一个数【'+ num1 + '】比较大');
}
else if ( num1 < num2 ) {
alert('第二个数【'+ num2 + '】比较大');
}
else {
alert('两个数一样大哦');
}
</script>
作业3:判断奇偶数
<script>
var num = prompt('请输入一个数,以判断是偶数还是奇数:');
num % 2 == 0 ? alert(num + '是偶数') : alert(num + '是奇数');
</script>
作业4:输入数值,判断星期几
<script>
var num = prompt('请输入1~7之间的任意数值:');
//注意下面的表达式 的 值和数据类型 要一致
switch (Number(num)) {
case 1:
alert('星期一');
break;
case 2:
alert('星期二');
break;
case 3:
alert('星期三');
break;
case 4:
alert('星期四');
break;
case 5:
alert('星期五');
break;
case 6:
alert('星期六');
break;
case 7:
alert('星期天');
break;
default:
alert('输入出错啦,不在判断范围');
}
</script>
作业5:班长口袋里的钱够请吃饭吗
<script>
var money = prompt('班长口袋里还剩多少钱:');
if ( money >= 2000 ) {
alert( money + '块钱,够请大家吃一顿【西餐】');
}
else if ( money >= 1500 ) {
alert( money + '块钱,够请大家吃一顿【快餐】');
}
else if ( money >= 1000 ) {
alert( money + '块钱,够请大家喝一瓶【饮料】');
}
else if ( money >= 500 ) {
alert( money + '块钱,够请大家吃一个【棒棒糖】');
}
else {
alert('班长口袋里的钱,不够请大家了。');
}
</script>
作业6:查询分数所处等级
<script>
var score = prompt('请输入要查询的分数:');
if ( score >= 90 ) {
alert( score + '分,处于【A】等级');
}
else if ( score >= 80 ) {
alert( score + '分,处于【B】等级');
}
else if ( score >= 70 ) {
alert( score + '分,处于【C】等级');
}
else if ( score >= 60 ) {
alert( score + '分,处于【D】等级');
}
else {
alert( score + '分,处于【E】等级');
}
</script>