运算符
1.算术运算符
2.赋值运算符
3.一元运算符
4.比较运算符
5.逻辑运算符
6.运算符优先级
算术运算符
1.数学运算符也叫算术运算符,主要包括加、减、乘、除、取余(求模)。
+:求和
-:求差
*:求积
/:求商
%:取模(取余数)
开发中经常作为某个数字是否被整除
2.同时使用多个运算符编写程序时,会按着某种顺序先后执行,我们称为优先级。
3.JavaScript中 优先级越高越先被执行,优先级相同时以书从左向右执行。
乘、除、取余优先级相同
加、减优先级相同
乘、除、取余优先级大于加、减
使用 () 可以提升优先级
总结: 先乘除后加减,有括号先算括号里面的
赋值运算符
1.赋值运算符:对变量进行赋值的运算符
2.已经学过的赋值运算符:= 将等号右边的值赋予给左边, 要求左边必须是一个变量
其他赋值运算符:+= 、-=、*=、/=、%=
一元运算符
1.众多的 JavaScript 的运算符可以根据所需表达式的个数,分为一元运算符、二元运算符、三元运算符
2.二元运算符:例:let num = 10 + 20
3.一元运算符:例:正负号
4.使用一元运算符做自增和自减运算
自增:
符号:++
作用:让变量的值 +1
自减:
符号:--
作用:让变量的值 -1
使用场景:
经常用于计数来使用。 比如进行10次操作,用它来计算进行了多少次了
5.自增运算符的用法:
6.参与运算时前置自增和后置自增的区别
注意:前置自增和后置自增独立使用时二者并没有差别!
一般开发中我们都是独立使用
后面 i++ 后置自增会使用相对较多
比较运算符
1.比较运算符:
: 左边是否大于右边
<: 左边是否小于右边
=: 左边是否大于或等于右边
<=: 左边是否小于或等于右边
==: 左右两边是否相等,将两边的数据进行转换为数值
===: 左右两边是否类型和值都相等
!==: 左右两边是否不全等
比较结果为boolean类型,即只会得到true或false
2.细节:
字符串比较,是比较的字符对应的ASCII码
从左往右依次比较
如果第一位一样再比较第二位,以此类推
比较的少,了解即可
NaN不等于任何值,包括它本身
尽量不要比较小数,因为小数有精度问题
不同类型之间比较会发生隐式转换
最终把数据隐式转换转成number类型再比较
所以开发中,如果进行准确的比较我们更喜欢 === 或者 !==
3.比较运算符返回的结果是什么?
结果只有2个, true 或者 false
4.扩展:= 和 == 和 === 怎么区别?
= 是赋值
== 是判断 只要求值相等,不要求数据类型一样即可返回true
=== 是全等 要求值和数据类型都一样返回的才是true
逻辑运算符
1.逻辑运算符里的短路
短路:只存在于 && 和 || 中,当满足一定条件会让右边代码不执行
原因:通过左边能得到整个式子的结果,因此没必要再判断右边
运算结果:无论 && 还是 || ,运算结果都是最后被执行的表达式值,一般用在变量赋值
短路例子:
运算符优先级
语句
表达式和语句的区别
1.表达式:
表达式通常会在原地返回一个值; 代码较短
2.语句:
js 整句或命令,用来描述一件事情,代码量比较长;比如: if语句 for 循环语句
区别:
表达式计算出一个值,但语句用来自行以使某件事发生(做什么事)
表达式 3 + 4
语句 alert() 弹出对话框
分支语句
2.分支语句包含:If分支语句、三元运算符
3.if 语句
3.1 if语句有三种使 用:单分支、双分支、多分支
单分支使用语法:
3.2 双分支if语法:
3.3 多分支if语法:
4.三元运算符
其实是比 if 双分支 更简单的写法,有时候也叫做三元表达式
符号:? 与 : 配合使用
语法:
循环语句
1.断点调试
作用:学习时可以帮助更好的理解代码运行,工作时可以更快找到bug
浏览器打开调试界面---按F12打开开发者工具---点到sources一栏---选择代码文件
断点:在某句代码上加的标记就叫断点,当程序执行到这句有标记的代码时会暂停下来
2.while循环
2.1 语法:
2.2 while循环注意事项
循环的本质就是以某个变量为起始值,然后不断产生变化量,慢慢靠近终止条件的过程。