目录
#博学谷IT学习技术支持#
1、JavaScript 运算符
运算符
运算符(operator)也被称为
操作符
,是用于实现赋值、比较和执行算数运算等功能的符号。
JavaScript中常用的运算符有:
算数运算符 、递增和递减运算符、比较运算符 、逻辑运算符 、赋值运算符。
算数运算符
概念:算术运算使用的符号,用于执行两个变量或值的算术运算。
![](https://i-blog.csdnimg.cn/blog_migrate/af2c439848aea74858221e5838da6cf6.png)
浮点数的精度问题
浮点数值的最高精度是 17 位小数,但在进行算术计算时其精确度远远不如整数。
![](https://i-blog.csdnimg.cn/blog_migrate/f7ca2c9c229addc10f1ccf9cbf5a5075.png)
所以:不要直接判断两个浮点数是否相等 !
表达式和返回值
表达式:
是由数字、运算符、变量等以能求得数值的有意义排列方法所得的组合
简单理解:是由数字、运算符、变量等组成的式子
表达式最终都会有一个结果,返回给我们,我们成为返回值
递增和递减运算符
如果需要反复给数字变量添加或减去1,可以使用
递增(++)和递减(
-- )
运算符来完成。
在 JavaScript 中,
递增(++)和递减( -- )
既可以放在变量前面,也可以放在变量后面。
放在变
量前面
时, 我们可以称为
前置递增(递减)运算符
,
放在变量后面
时,我们可以称为
后置递增
(递减)运算符
。
注意:
递增和递减运算符必须和变量配合使用。
前置递增运算符
++num
前置递增,就是自加1,类似于 num = num + 1,但是 ++num 写起来更简单。
使用口诀:
先自加,后返回值
后置递增运算符
num++
后置递增,就是自加1,类似于 num = num + 1 ,但是 num++ 写起来更简单。
使用口诀:
先返回原值,后自加
开发时,大多使用后置递增/减,并且代码独占一行,例如:num++; 或者 num--;
比较运算符
概念:比较运算符(关系运算符)是
两个数据进行比较时所使用的运算符
,比较运算后,会
返回一
个布尔值
(true / false)作为比较运算的结果。
![](https://i-blog.csdnimg.cn/blog_migrate/092ea0bd635a29ec61030b3af0c67c70.png)
逻辑运算符
逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件
的判断 。
逻辑与&&
两边都是 true才返回 true,否则返回 false
逻辑或 ||
两边都为 false 才返回 false,否则都为true
逻辑非 !
逻辑非(
!
)也叫作
取反符
,用来取一个布尔值相反的值,如 true 的相反值是 false
短路运算(逻辑中断)
短路运算的原理:
当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边
的表达式的值;
逻辑与
语法:
表达式1 && 表达式2
如果第一个表达式的值为真,则返回表达式2
如果第一个表达式的值为假,则返回表达式1
![](https://i-blog.csdnimg.cn/blog_migrate/63d809dfb34d01884e020a3c8929958d.png)
逻辑或
语法:
表达式1 || 表达式2
如果第一个表达式的值为真,则返回表达式1
如果第一个表达式的值为假,则返回表达式2
赋值运算符
用来把数据赋值给变量的运算符。
运算符优先级
2、 JavaScript 流程控制-分支
流程控制主要有三种结构,分别是
顺序结构
、
分支结构
和
循环结构
,这三种结构代表三种代码执行
的顺序
分支流程控制 if 语句
if 语句
语法结构
//
条件成立执行代码,否则什么也不做
if (
条件表达式
) {
//
条件成立执行的代码语句
}
if else语句(双分支语句)
语法结构
![](https://i-blog.csdnimg.cn/blog_migrate/e905f08e4402f70ecaafc8aa7c13d67b.png)
案例:判断闰年
算法:能被4整除
且
不能整除100的为闰年(如2004年就是闰年,1901年不是闰年)
或者
能够被
400 整除的就是闰年
var year = prompt('请输入一个年份');
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
alert('是闰年');
} else {
alert('是平年');
}
if else if 语句(多分支语句)
三元表达式
案例:数字补0
用户输入数字,如果数字小于10,则在前面补 0 ,比如01,09 ,如果数字大于10,则不需要补,
比如 20。
<script>
var num = prompt('请输入大于0的数字');
var num1 = num < 10 ? '0' + num : num;
console.log(num1);
</script>
分支流程控制 switch 语句
语法结构
![](https://i-blog.csdnimg.cn/blog_migrate/1f268776c417a229e63e9feb4150ec12.png)
switch :开关 转换 , case :小例子 选项
关键字 switch 后面
括号内
可以是
表达式
或
值
, 通常是一个
变量
关键字
case
, 后跟一个选项的表达式或值,
后面跟一个冒号
switch 表达式的值会与结构中的 case 的值做比较 如果存在匹配
全等
(===) ,则与该 case 关联的
代码块会被执行,并在遇
到 break 时停止
,整个 switch 语句代码 执行结束
如果所有的 case 的值都和表达式的值不匹配,则执行 default 里的代码
注意:
执行case 里面的语句时,如果没有break,则继续执行下一个case里面的语句。