JavaScript 常用的操作符

JavaScript 常用的操作符可以分为以下几类:


7. 类型操作符(Type Operators)

  • typeof 返回变量类型(如 "string"、"number")
  • instanceof 检查对象是否属于某个类
js 复制代码
console.log(typeof 123);       // "number"
console.log([] instanceof Array); // true

8. 其他常用操作符

  • in 检查对象是否有某个属性(如 'name' in obj)
  • delete 删除对象属性(如 delete obj.name)
  • ?. 可选链(避免 undefined 报错,如 obj?.prop)
  • ?? 空值合并(如 x ?? 'default',仅在 x 为 null 或 undefined 时生效)
  • ... 展开/剩余操作符(用于数组或对象)
js 复制代码
delete删除元素 delete this.items[element]
`in` 操作符用于检查一个对象或其原型链中是否包含某个**属性名**
(即键名,字符串类型)。它不会检查属性值。
// 可选链
const user = { name: 'Alice' };
console.log(user?.address?.city); // undefined(不会报错)

// 空值合并
const score = 0;
console.log(score || 'N/A');  // 'N/A'(0 是 falsy)
console.log(score ?? 'N/A');  // 0(只有 null/undefined 会被替换)

// 展开操作符
const arr1 = [1, 2];
const arr2 = [...arr1, 3]; // [1, 2, 3]

总结

类别 操作符示例
其他 in, delete, ?., ??, ...
算术 +, -, *, /, %, **
赋值 =, +=, -=, *=, /=, %=
比较 ==, ===, >, <, >=, <=
逻辑 &&, 或, !
位运算 &, 或,~, <<, >>
条件 condition ? expr1 : expr2
类型 typeof, instanceof

掌握这些操作符是 JavaScript 编程的基础!

1. 算术操作符(Arithmetic Operators)

用于数学计算:

  • + 加法(也可用于字符串拼接)
  • - 减法
  • * 乘法
  • / 除法
  • % 取模(求余数)
  • ** 指数(如 2 ** 3 返回 8)
  • ++ 自增(x++ 或 ++x)
  • -- 自减(x-- 或 --x)
js 复制代码
console.log(5 + 3);   // 8
console.log(10 % 3);  // 1
console.log(2 ** 4);  // 16

2. 赋值操作符(Assignment Operators)

用于变量赋值:

  • = 基本赋值
  • += 加后赋值(x += 2 等价于 x = x + 2)
  • -= 减后赋值
  • *= 乘后赋值
  • /= 除后赋值
  • %= 取模后赋值
  • **= 指数后赋值
js 复制代码
let x = 5;
x += 3; // x = 8

3. 比较操作符(Comparison Operators)

用于比较值,返回 true 或 false:

  • == 相等(会进行类型转换)
  • === 严格相等(值和类型都相同)
  • != 不相等
  • !== 严格不相等
  • > 大于
  • < 小于
  • >= 大于等于
  • <= 小于等于
js 复制代码
console.log(5 == '5');   // true(类型转换)
console.log(5 === '5');  // false(严格比较)
console.log(10 > 5);     // true

4. 逻辑操作符(Logical Operators)

用于布尔逻辑运算:

  • && 逻辑与(两个条件都为 true 才返回 true)
  • || 逻辑或(至少一个为 true 就返回 true)
  • ! 逻辑非(取反)
js 复制代码
console.log(true && false);  // false
console.log(true || false);  // true
console.log(!true);         // false

5. 位操作符(Bitwise Operators)

对二进制位进行操作(较少使用):

  • & 按位与
  • | 按位或
  • ^ 按位异或
  • ~ 按位非
  • << 左移
  • >> 右移
  • >>> 无符号右移
js 复制代码
console.log(5 & 3);  // 1(0101 & 0011 = 0001)

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

condition ? expr1 : expr2

如果 condition 为 true,返回 expr1,否则返回 expr2。

js 复制代码
const age = 20;
const status = age >= 18 ? 'Adult' : 'Minor';
console.log(status); // 'Adult'

相关推荐
Csvn1 小时前
WASM
前端
修己xj2 小时前
我用 AI 给自己写了一个 Markdown 编辑器,然后把它开源了
前端
FRing033 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幸运小猿3 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
moshuying5 小时前
网购能买Token了!
前端
h_65432105 小时前
echarts实现柱状图加一条横线
前端·echarts
风骏时光牛马5 小时前
生成一个后端标题,只需要一个标题,不需要其他的任何文本。
前端
子非鱼@Itfuture5 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端
郭小李5 小时前
openFeign入门
java·开发语言·前端
馒头不想说话5 小时前
AI当运营,帮你省人力
前端