JavaScript中的所有操作符

JavaScript 中的操作符用于执行各种操作,如数学运算、比较、逻辑运算等。操作符可以分为多种类型,下面详细介绍这些操作符及其用法。

1. 算术操作符(Arithmetic Operators)

这些操作符用于执行数学运算。

  • 加法 (+):用于两个值相加。let sum = 5 + 3; // 8
  • 减法 (-):用于两个值相减。let difference = 5 - 3; // 2
  • 乘法 (*):用于两个值相乘。let product = 5 * 3; // 15
  • 除法 (/):用于两个值相除。let quotient = 6 / 3; // 2
  • 取余 (%):返回两个值相除的余数。let remainder = 5 % 3; // 2
  • 递增 (++):将变量的值增加 1。let a = 5; a++; // a = 6
  • 递减 (--):将变量的值减少 1。let b = 5; b--; // b = 4

2. 赋值操作符(Assignment Operators)

这些操作符用于将值赋给变量。

  • 赋值 (=):将右边的值赋给左边的变量。javascript复制代码let x = 10;
  • 加赋值 (+=):将右边的值加到左边的变量上,然后赋值给左边的变量。let x = 10; x += 5; // x = 15
  • 减赋值 (-=):将右边的值从左边的变量中减去,然后赋值给左边的变量。let x = 10; x -= 5; // x = 5
  • 乘赋值 (*=):将左边的变量乘以右边的值,然后赋值给左边的变量。let x = 10; x *= 5; // x = 50
  • 除赋值 (/=):将左边的变量除以右边的值,然后赋值给左边的变量。let x = 10; x /= 5; // x = 2
  • 取余赋值 (%=):将左边的变量取余右边的值,然后赋值给左边的变量。let x = 10; x %= 3; // x = 1

3. 比较操作符(Comparison Operators)

这些操作符用于比较两个值并返回布尔值 truefalse

  • 等于 (==):检查两个值是否相等(类型转换)。let result = (5 == '5'); // true
  • 全等于 (===):检查两个值是否相等且类型相同。let result = (5 === '5'); // false
  • 不等于 (!=):检查两个值是否不相等(类型转换)。let result = (5 != '5'); // false
  • 不全等于 (!==):检查两个值是否不相等或类型不同。let result = (5 !== '5'); // true
  • 大于 (>):检查左边的值是否大于右边的值。let result = (5 > 3); // true
  • 小于 (<):检查左边的值是否小于右边的值。let result = (5 < 3); // false
  • 大于等于 (>=):检查左边的值是否大于或等于右边的值。let result = (5 >= 5); // true
  • 小于等于 (<=):检查左边的值是否小于或等于右边的值。let result = (5 <= 3); // false

4. 逻辑操作符(Logical Operators)

这些操作符用于执行逻辑运算。

  • 与 (&&):如果两个操作数都为 true,则结果为 truelet result = (true && false); // false
  • 或 (||):如果两个操作数中至少有一个为 true,则结果为 truelet result = (true || false); // true
  • 非 (!):对操作数取反,如果操作数为 true,则结果为 false,反之亦然。let result = !true; // false

5. 位操作符(Bitwise Operators)

这些操作符用于对整数进行按位操作。

  • 按位与 (&):对两个操作数的每一位执行按位与运算。let result = 5 & 3; // 1 (0101 & 0011 = 0001)
  • 按位或 (|):对两个操作数的每一位执行按位或运算。let result = 5 | 3; // 7 (0101 | 0011 = 0111)
  • 按位异或 (^):对两个操作数的每一位执行按位异或运算。let result = 5 ^ 3; // 6 (0101 ^ 0011 = 0110)
  • 按位非 (~):对操作数的每一位执行按位非运算。let result = ~5; // -6 (按位取反)
  • 左移 (<<):将操作数的二进制位向左移动指定的位数。let result = 5 << 1; // 10 (0101 << 1 = 1010)
  • 右移 (>>):将操作数的二进制位向右移动指定的位数。let result = 5 >> 1; // 2 (0101 >> 1 = 0010)
  • 无符号右移 (>>>):将操作数的二进制位向右移动指定的位数,结果不考虑符号位。let result = -5 >>> 1; // 2147483642 (无符号右移)

6. 条件(三元)操作符(Conditional (Ternary) Operator)

条件操作符用于根据条件选择两个值中的一个。语法为 condition ? expr1 : expr2

示例

let age = 18;
let isAdult = (age >= 18) ? 'Adult' : 'Minor'; // 'Adult'

7. 类型操作符(Type Operators)

  • typeof:用于获取变量的类型。let type = typeof 42; // "number"
  • instanceof:用于检查对象是否是某个构造函数的实例。let date = new Date(); let isDate = date instanceof Date; // true

8. 其他操作符

  • 逗号操作符(,:用于在一个表达式中执行多个操作。let x = (1, 2, 3); // 3 (逗号操作符返回最后一个值)
  • 解构赋值(Destructuring Assignment):用于从数组或对象中提取多个值。let [a, b] = [1, 2]; // a = 1, b = 2 let { x, y } = { x: 10, y: 20 }; // x = 10, y = 20

总结

JavaScript 中的操作符为各种数据操作提供了工具,从数学运算到逻辑判断再到位操作。理解这些操作符及其用法对于编写有效的 JavaScript 代码至关重要。

JavaScript

什么是JS的变量?

上一篇

JavaScript

JavaScript中保留的关键字

下一篇