目录
一、运算符
1、算术运算符
(1)什么是算术运算符?
数学运算符也叫算术运算符,主要包括加、减、乘、除、取余(求模)。
- +:求和
- -:求差
- *:求积
- /:求商
- %:取模(取余数)
- 开发中经常作为某个数字是否被整除
(2)算术运算符执行的优先级顺序
同时使用多个运算符编写程序时,会按着某种顺序先后执行,我们称为优先级。JavaScript中优先级越高越先被执行,优先级相同时以书从左向右执行。
- 乘、除、取余优先级相同
- 加、减优先级相同
- 乘、除、取余优先级大于加、减
- 使用() 可以提升优先级
- 总结:先乘除后加减,有括号先算括号里面的~~~
2、赋值运算符
(1)什么是赋值运算符?
赋值运算符:对变量进行赋值的运算符,使用这些运算符可以在对变量赋值时进行快速操作。
已经学过的赋值运算符:=将等号右边的值赋予给左边, 要求左边必须是一个容器
其他赋值运算符:
- +=
- -=
- *=
- /=
- %=
(2)以+= 赋值运算符来举例
- 以前我们让一个变量加1如何做的?
- 现在我们有一个简单的写法
3、一元运算符
(1)一元运算符介绍
众多的JavaScript 的运算符可以根据所需表达式的个数,分为一元运算符、二元运算符、三元运算符。
- 二元运算符:
- 一元运算符:
例:正负号
(2)使用一元运算符做自增运算
自增:
- 符号:++
- 作用:让变量的值+1
自减:
- 符号:--
- 作用:让变量的值-1
使用场景:
- 经常用于计数来使用。比如进行10次操作,用它来计算进行了多少次了
代码示例:
(前置自增,每执行1次,当前变量数值加1,其作用相当于num+= 1)
(后置自增,每执行1次,当前变量数值加1,其作用相当于num+= 1)
(3)前置自增和后置自增的区别
前置自增和后置自增独立使用时二者并没有差别,但是如果不单独使用的话还是有区别的,一般开发中我们都是独立使用,后面i++ 后置自增会使用相对较多。具体区别如下:
- 前置自增:先自加再使用(记忆口诀:++在前先加)
- 后置自增:先使用再自加(记忆口诀:++在后后加)
4、比较运算符
(1)比较运算符的介绍
作用:比较两个数据大小、是否相等
(2) 比较运算符的使用
- > :左边是否大于右边
- <:左边是否小于右边
- >=:左边是否大于或等于右边
- <=:左边是否小于或等于右边
- ==:左右两边是否相等
- ===:左右两边是否类型和值都相等
- !==:左右两边是否不全等
- 比较结果为boolean类型,即只会得到true或false
(3)比较运算符的细节
1.字符串比较,是比较的字符对应的ASCII码
- 从左往右依次比较
- 如果第一位一样再比较第二位,以此类推
- 比较的少,了解即可
2.NaN不等于任何值,包括它本身
3.尽量不要比较小数,因为小数有精度问题
4.不同类型之间比较会发生隐式转换
- 最终把数据隐式转换转成number类型再比较
- 所以开发中,如果进行准确的比较我们更喜欢=== 或者!==
(4)=和== 和=== 怎么区别?
- = 是赋值
- == 是判断只要求值相等,不要求数据类型一样即可返回true
- === 是全等要求值和数据类型都一样返回的才是true
- 开发中,请使用===
注意点:
- 比较运算符返回的结果只有2个,true 或者false
5、逻辑运算符
(1)逻辑运算符的介绍
逻辑运算符是用来解决多重条件判断的
(2)逻辑运算符的使用
(3)逻辑运算符里的短路
- 短路:只存在于&& 和||中,当满足一定条件会让右边代码不执行
- 原因:通过左边能得到整个式子的结果,因此没必要再判断右边
- 运算结果:无论&& 还是||,运算结果都是最后被执行的表达式值,一般用在变量赋值
代码示例:
注意点:
- 逻辑运算符短路运算符只存在于&& 和||中,当满足一定条件会让右边代码不执行
6、运算符优先级
注意点:
- 一元运算符里面的逻辑非优先级很高
- 逻辑与比逻辑或优先级高
二、语句
1、表达式和语句
(1)表达式介绍
表达式是一组代码的集合,JavaScript解释器会将其计算出一个结果,如:
(2)表达式和语句的区别
- 语句:js整句或命令,js语句是以分号结束(可以省略)比如:if语句for 循环语句
区别:
表达式计算出一个值,但语句用来自行以使某件事发生(做什么事)
- 表达式3 + 4
- 语句alert()弹出对话框
其实某些情况,也可以把表达式理解为语句,因为它是在计算结果,也是做事。
2、分支语句
(1)程序三大流程控制语句
- 以前我们写的代码,写几句就从上往下执行几句,这种叫顺序结构
- 有的时候要根据条件选择执行代码,这种就叫分支结构
- 某段代码被重复执行,就叫循环结构
(2)分支语句
分支语句可以让我们有选择性的执行想要的代码
分支语句包含:
- If分支语句
- 三元运算符
- switch 语句
1. if语句
- if语句有三种使用:单分支、双分支、多分支
- 单分支使用语法:
当括号内的条件为true时,进入大括号里执行代码。小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型。
- 双分支if语法:
- 多分支if语法:
多分支if语法释义:
- 先判断条件1,若满足条件1就执行代码1,其他不执行
- 若不满足则向下判断条件2,满足条件2执行代码2,其他不执行
- 若依然不满足继续往下判断,依次类推
- 若以上条件都不满足,执行else里的代码n
- 注:可以写N个条件,但这里演示只写2个
2.三元运算符
- 三元运算符其实是比if 双分支更简单的写法,有时候也叫做三元表达式
- 符号:? 与:配合使用
- 语法:
3.switch 语句
- switch语句是一种执行满足条件的语句
- 语法:
释义:
- 找到跟小括号里数据全等的case值,并执行里面对应的代码
- 若没有全等===的则执行default里的代码
- 例:数据若跟值2全等,则执行代码2
注意点:
- switch case语句一般用于等值判断,不适合于区间判断
- switch case一般需要配合break关键字使用没有break会造成case穿透
(3)循环语句
1.while循环
- 循环:重复执行某段代码,而while : 在…. 期间
- while 循环语法:
释义:
- 跟if语句很像,都要满足小括号里的条件为true才会进入执行代码
- while大括号里代码执行完毕后不会跳出,而是继续回到小括号里判断条件是否满足,若满足又执行大括号里的代码,然后再回到小括号判断条件,直到括号内条件不满足,即跳出
注意点:
循环的本质就是以某个变量为起始值,然后不断产生变化量,慢慢靠近终止条件的过程。所以,循环需要具备三要素:
- 变量起始值
- 终止条件(没有终止条件,循环会一直执行,造成死循环)
- 变量变化量(用自增或者自减)