运算符

基本运算符

示例代码:

const a = 10; const
  b = 20

// 加法运算
console.log(a + b === 30)
// 减法运算
console.log(a - b === -10)
// 乘法运算
console.log(a * b === 200)
// 除法运算
console.log(a / b === 0.5)
// 取余运算
console.log(a % b === 10)
  • 加法运算(+)也可以用作字符串的拼接。
const a = '.w'


const b = 'xs'

// 字符串拼接
console.log(a + b === '.wxs')

一元运算符

示例代码:

let a = 10; const
  b = 20

// 自增运算
console.log(a++ === 10)
console.log(++a === 12)
// 自减运算
console.log(a-- === 12)
console.log(--a === 10)
// 正值运算
console.log(+a === 10)
// 负值运算
console.log(0 - 10 === -a)
// 否运算
console.log(~a === -11)
// 取反运算
console.log(!a === false)
// delete 运算
console.log(delete a.fake === true)
// void 运算
console.log(undefined === void a)
// typeof 运算
console.log(typeof a === 'number')

位运算符

示例代码:

const a = 10; const
  b = 20

// 左移运算
console.log((a << 3) === 80)
// 无符号右移运算
console.log((a >> 2) === 2)
// 带符号右移运算
console.log((a >>> 2) === 2)
// 与运算
console.log((a & 3) === 2)
// 异或运算
console.log((a ^ 3) === 9)
// 或运算
console.log((a | 3) === 11)

比较运算符

示例代码:

const a = 10; const
  b = 20

// 小于
console.log((a < b) === true)
// 大于
console.log((a > b) === false)
// 小于等于
console.log((a <= b) === true)
// 大于等于
console.log((a >= b) === false)

等值运算符

示例代码:

const a = 10; const
  b = 20

// 等号
console.log((a == b) === false)
// 非等号
console.log((a != b) === true)
// 全等号
console.log((a === b) === false)
// 非全等号
console.log((a !== b) === true)

赋值运算符

示例代码:

let a = 10

a = 10; a *= 10
console.log(a === 100)
a = 10; a /= 5
console.log(a === 2)
a = 10; a %= 7
console.log(a === 3)
a = 10; a += 5
console.log(a === 15)
a = 10; a -= 11
console.log(a === -1)
a = 10; a <<= 10
console.log(a === 10240)
a = 10; a >>= 2
console.log(a === 2)
a = 10; a >>>= 2
console.log(a === 2)
a = 10; a &= 3
console.log(a === 2)
a = 10; a ^= 3
console.log(a === 9)
a = 10; a |= 3
console.log(a === 11)

二元逻辑运算符

示例代码:

const a = 10; const
  b = 20

// 逻辑与
console.log((a && b) === 20)
// 逻辑或
console.log((a || b) === 10)

其他运算符

示例代码:

const a = 10; const
  b = 20

// 条件运算符
console.log((a >= 10 ? a + 10 : b + 10) === 20)
// 逗号运算符
console.log((a, b) === 20)

运算符优先级

优先级 运算符 说明 结合性
20 ( ... ) 括号 n/a
19 ... . ... 成员访问 从左到右
... [ ... ] 成员访问 从左到右
... ( ... ) 函数调用 从左到右
17 ... ++ 后置递增 n/a
... -- 后置递减 n/a
16 ! ... 逻辑非 从右到左
~ ... 按位非 从右到左
+ ... 一元加法 从右到左
- ... 一元减法 从右到左
++ ... 前置递增 从右到左
-- ... 前置递减 从右到左
typeof ... typeof 从右到左
void ... void 从右到左
delete ... delete 从右到左
14 ... * ... 乘法 从左到右
... / ... 除法 从左到右
... % ... 取模 从左到右
13 ... + ... 加法 从左到右
... - ... 减法 从左到右
12 ... << ... 按位左移 从左到右
... >> ... 按位右移 从左到右
... >>> ... 无符号右移 从左到右
11 ... < ... 小于 从左到右
... <= ... 小于等于 从左到右
... > ... 大于 从左到右
... >= ... 大于等于 从左到右
10 ... == ... 等号 从左到右
... != ... 非等号 从左到右
... === ... 全等号 从左到右
... !== ... 非全等号 从左到右
9 ... & ... 按位与 从左到右
8 ... ^ ... 按位异或 从左到右
7 ... ... 按位或 从左到右
6 ... && ... 逻辑与 从左到右
5 ... || ... 逻辑或 从左到右
4 ... ? ... : ... 条件运算符 从右到左
3 ... = ... 赋值 从右到左
... += ... 赋值 从右到左
... -= ... 赋值 从右到左
... *= ... 赋值 从右到左
... /= ... 赋值 从右到左
... %= ... 赋值 从右到左
... <<= ... 赋值 从右到左
... >>= ... 赋值 从右到左
... >>>= ... 赋值 从右到左
... &= ... 赋值 从右到左
... ^= ... 赋值 从右到左
... |= ... 赋值 从右到左
0 ... , ... 逗号 从左到右

个结果 ""

    没有找到相关内容 ""