运算符
能够使用常用的运算符
能够说出前置递增和后置递增的区别
能够说出运算符的优先级
运算符就是操作符 就是用于实现赋值 比较 和执行算数运算等功能
的符号
js常用运算符:算数 递增递减 比较 逻辑 赋值
% 取余
console.log(9 % 2)
浮点数的计算
console.log(0.3 + 0.2);
console.log(0.1 + 0.2);
console.log(0.07 * 100);
var num = 0.1 0.2
console.log(num == 0.3);
我们怎么判断一个数能够被整除呢?
他的余数是0就说明这个数能被整除 这就是% 取余运算符的主要用途
请问1+2*3=?
7,注意算数运算符优先级的,先乘除,后加减,有小括号先算小括号里面的
表达式和返回值
表达式就是由数字 运算符 变量等异、以能求得的数值的有意义的排列方法所得的组合
简单理解 就是由数字 运算符 变量等组成的式子
表达式最终都会有一个结果,返回给我们 我们成为返回值
console.log(1 + 1); //2就是返回值
如:
console.log( 1 + 1 );
var age = 18 + 8
console.log(age + 4);
递增 递减
想要一个变量 自己加一
var num = 1
num = num + 1
num = num + 1
如果想要反复给数字添加或者减去 1 可以使用 递增(++) 或 递减(–)
在 js 中 递减 和递增既可以放在变量的前面 也可以放在变量的后面 放在变量前面时 我们可以成为 前置递增 后面就是后置递增
1.前置递增 ++ 写在变量的前面
var age = 10
++age //类似于age = age + 1
var num = 10
console.log( ++num + 15 );
++num 前置递增 就是自加1 类似于 num = num + 1 但是 ++num写起来更好看 更简单
使用口诀就是先自己加 后返回值
{分析下面这个公式:先加一 后返回值 就是先拿10+1 在返回他的值,那现在他的值就不是10了 就是11
var age = 10;
console.log(++age + 10); }
2.后置递增运算符
后置递增 ++写在变量的后面
num++ 后置递增 就是自加1 类似于 num = num + 1 但是 ++num写起来更好看 更简单
{分析下面公式:age++是后置递增 先返回原来的值 原来就是10 10+10=20,
这里就是显示20 此时age虽然不表现出来但是悄悄加了1 等于11
var age =10;
console.log(age++ + 10); // 算法是10+10 结果显示是20
console.log(age); // age悄悄加了1 显示age是11 }
*前置递增和后置递增的效果 如果单独使用 效果是一样的
*后置自增口诀 先返回原来值 然后自加1
var a = 10
a++
var b = ++a +10
console.log(b);
a = 1
b = a++
b = a = 1
a = 1 + 1 = 2
逻辑运算符
概念逻辑运算符是用来进行布尔值运算的运算符其返回结果也是布尔值后面开发中经常使用多个条件判断
&& 逻辑与简称“与”and true && false
||逻辑或简称"或”or true || false
!逻辑非简称”非”true !false
console.log(3 > 5 || 5 < 9);
短路运算(逻辑中断)
短路运算原理:当多个表达式(值)时,左边的表达式值可以确定结果时就不在维续运算右边的表达式的值
*逻辑与
console.1og( 3 > 5 && 5 > 3);
console.1og( 3 < 5 && 5 < 3);
语法表达式1 && 表达式2
如果第一个表达式的值为真那么则返回第二个表达式
如果第一个表达式的值为假那么则返回第一- 个表达式
*逻辑或
语法 表达式1 || 表达式2
如果说第一个表达式 为真 则返回第一个
如果说第一个表达式 为假 则返回第二个
console.log(123 || 456);
console.log(0 || 456);
console.log(123 || 456 || 789);
赋值运算符
用来把数据赋值给变量的运算符
+= -=false
var age = 75
age +=15
运算符的优先级
小括号()
一元运算符 +±- !
算数运算符 先*/ 后±
关系运算符 < > <= >=
相等运算符 == != === !==
逻辑运算符 先&& 后 ||
赋值运算符 =
逗号运算符 ,
一元运算符中的逻辑非 优先级很高
逻辑与比逻辑或优先级高
console.log( 4 > 6 || ‘人’ != ‘阿童木’ && !(12 * 8 == 144) && true);
var num = 10
console.log( 5 == num /2 && ( 2 + 2 *num).toString() === ‘22’)
var a = 3 > 5 && 2 < 7 && 3 == 4
console.log(a);
js流程控制 - 分支
能够使用if分支语句
能够使用switch分支语句
能够使用三元表达式
控制流程
简单理解 就是来控制我们代码按照什么结构顺序来执行
三种结构 1.顺序结构 2.分支结构 3.循环结构,这三种结构代表三种代码执行的顺序。
如图
1.顺序结构是程序中最简单,最基础的流程控制, 他没有
特定的语法结构 程序会按照 代码的先后顺序 依次执行
程序中 大多数的代码都是这样执行的
顺序流程控制
2.分支流程控制if语句
由上自下执行代码的过程 根据不同的条件 执行不同的路径代码(执行代码多选一的一个过程,从而得到不同的
结果)
js语言中提供了2种分支结构语句
if语句 和 switch语句
if 的语法结构
if (条件表达式){
条件成立时执行的执行语句
}
if语句用法案列:
if (3 > 5) {
alert(‘对的执行我’);
}
分析:3大与5这肯定是错的,所以不执行任何东西
如果改成3小于5,那么就执行的是alert(‘对的执行我’);
执行思路 如果if里面的条件表达式的结果为true时 则执行大括号里面的执行语句
如果if 条件表达式为假 则不执行大括号里面的语句 则执行 if 后面的语句
这个语句可以理解为一个行为 循环语句和分支语句 就是典型的语句 一个程序由多个
语句相组成 一般情况下 会分成一个一个的语句
语句可以理解为一个行为 循环语句和分支语句 就是典型的语句 一个程序由多个语句相组成 一般情况下 会分成一个一个的语句的语句
if else if 如果 else 否则
if (条件表达式) {
执行语句1
} else {
执行语句2
}
执行思路 如果条件表达式结果为真,那么执行的是执行语句1,如果条件表达式为假,那么执行的是执行语句2
小练习
var age = prompt(‘谁最帅’)
if ( age == ‘彭于晏’ ) {
alert(‘是的,你真有眼光’)
} else {
alert(‘你可拉倒吧’)
}
小练习
判断是否是闰年
接受用户输入的年份 如果是闰年 就弹出闰年 否则 弹出平年
算法 能被4整除 并且能整除100 或者能被 400 整除
var age = prompt(‘请输入你要查询的年份’);
if ( age % 4 == 0 && age % 100 != 0 || age % 400 == 0 ) {
alert(‘年份是闰年’);
} else {
alert(‘年份是平年’);
}
3.4 多分支语句
就是利用多个条件来选择不同的语句执行
得到不同的结果 多选一 的过程
if else if 语句是多分支语句
语法规范:
if (条件表达式1) {
执行语句1;
} else if (条件表达式2) {
执行语句2;
} else if (条件表达式3) {
执行语句3;
}
。。。
。。。
。。。
。。。
else {
最后遗言
}
如果条件表达式1 满足就执行 语句一 执行完毕后,退出整个if 分支语句
如果条件表达式1 不满足 则判断条件表达式2 满足的话 执行语句2 以此类推
如果睡眠所有条件表达式都不成立 则执行 else 里面的语句
注意:
1.多分支语句还是多选一 最后只能有一句语句执行
2.else if 里面的条件理论上是可以任意多个的
3.else if 中间必须有空格
案列练习:
要求接受用户输入的分数 根据分数输出对应的等级字母 A.B.C.D.E
90以上含90A
80含 - 90不含 B
70含 - 80不含 C
60含 - 70含 D
60以下不含 E
var number = prompt(‘请输入一个数字’);
if ( number >=90 ) {
alert(‘是A’)
} else if (number >=80 ) {
alert(‘是b’)
} else if (number >=70 ) {
alert(‘是C’)
} else if (number >=60 ) {
alert(‘是D’)
} else {
alert(‘面对疾风吧’)
}
5.1分支流程控制 switch 语句
5.1 语法结构
switch 语句也是多分支语句,它用于基于不同的条件来执行不同的代码,当要针对变量设置一系列的特定值
的选项时,就可以使用switch。
1.switch 语句也是多分支语句 也可以实现多选1
2.语法结构 switch 转换,开关,case 小例子或者选项的意思。
3.执行思路 利用我们的表达式的值 和case 后面的选项值相匹配 如果匹配上,就执行该case 里面的语句
如果都没有匹配上,那么执行 default里面的语句。
4.代码验证
switch 注意事项
再一个案列:
5.2 switch语句和if else if语句的区别
①一般情况下,它们两个语句可以相互替换
②switch…case 语句通常处理case为比较确定值的情况,而f…else… .语句更加灵活,常用于范围判断(大于、
等于某个范围)
③switch 语句进行条件判断后直接执行到程序的条件语句, 效率更高。而…else 语句有几种条件,就得判断多
少次。
④当分支比较少时, if… else语句的执行效率比switch语句高。
⑤当分支比较多时, switch语句的执行效率比较高,而且结构更清晰。
联系巩固: