JS 运算符
- 算数运算符
+ - * / %
自增、自减运算符:++ --
-
表达式:操作符 + 操作数 (1 + 1)
-
表达式会将等式计算出一个结果,然后参与周围程序运算
-
加法运算符正常两边都是数字的情况下,会进行加法的求和,但是如果符号的任意一边出现了其他的数据类型,比如字符串,那么运行的就不是加法求和,而是数据的拼接
只有加法会出现这种情况,并且其他运算符在遇到数据类型不同的时候,会将其他的数据类型尝试转换为数字类型,这个过程称为隐式转换
// 加法
console.log(1 + 1) // 2
console.log("1" + 1) // 11
// 减法
console.log("10086" - 0) // 隐式转换
// 乘法
console.log(5 * 9) // 45
// 除法
console.log(9 / 3) // 3
// 取余
console.log(9 % 4) // 1
- 关系运算符(比较运算符)
< > >= <=
!== !===
== ===
!= 判断符号两边是否不相等
== 判断符号两边是否相等
忽略数据类型,只判断数据值
!== 判断符号两边是否不相等
=== 判断符号两边是否相等
必须保证符号两边的数据值和数据类型都满足条件
// 大于
console.log(2 > 1) // true
// 小于
console.log(2 < 1) // false
// 大于等于
console.log(2 >= 1) // true
// 小于等于
console.log(2 <= 1) // false
// 不等于
console.log(2 != "2") // true
console.log(2 !== "2") // false
// 等于
console.log(2 == "2") // true
console.log(2 === "2") // false
- 逻辑运算符
&& 逻辑与(且)
满足前一个 并且 满足后一个
当符号左边的数据转换为布尔值后,如果布尔值为真运行,或者返回符号右边的内容。如果布尔值为假,那么符号左边的内容,不会去运行符号右边的内容(返回左边或者false)
|| 逻辑或
满足前一个 或者 满足后一个
当符号左边的数据转换为布尔值后,如果布尔值为真,那么运行或者返回符号右边的内容、如果布尔值为假,运行或者返回符号右边的内容
! 逻辑非(取反)
获取到数据的布尔值 取反 后的结果
// && 逻辑与(且)
console.log(100 && 200) // 200
// 利用 && 完成分支语句
1 < 2 && console.log("条件成立") // 条件成立
1 > 2 && console.log("条件不成立") // 不执行
// || 逻辑或
console.log(true || "10086") // true
console.log(false || "10086") // false
// 利用 || 完成分支语句
1 < 2 || console.log("条件成立") // "条件成立"
1 > 2 || console.log("条件不成立") // 不执行
// ! 逻辑非(取反)
console.log(!100) // false
console.log(!0) // true
- 自增自减运算符
在自身原本的数值基础上 +1 或 -1
符号在前(先计算后使用)
符号在后(先使用后计算)
var num = 10
console.log(num++) // 10
console.log(++num) // 11