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',仅在 xnullundefined 时生效)
  • ... 展开/剩余操作符(用于数组或对象)
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)

用于比较值,返回 truefalse

  • == 相等(会进行类型转换)
  • === 严格相等(值和类型都相同)
  • != 不相等
  • !== 严格不相等
  • > 大于
  • < 小于
  • >= 大于等于
  • <= 小于等于
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

如果 conditiontrue,返回 expr1,否则返回 expr2

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

相关推荐
要加油哦~几秒前
css | class中 ‘.‘ 和 ‘:‘ 的使用 | 如,何时用 &.is-selected{ ... } 何时用 &:hover{...}?
前端·css
HelloWord~15 分钟前
SpringSecurity+vue通用权限系统2
java·vue.js
不浪brown31 分钟前
开源!矢量建筑白模泛光特效以及全国77个大中城市的矢量shp数据获取!
前端·cesium
山有木兮木有枝_33 分钟前
JavaScript 数据类型与内存分配机制探究
前端
小小小小宇38 分钟前
前端 异步任务并发控制
前端
bysking1 小时前
【27-vue3】vue3版本的"指令式弹窗"逻辑函数createModal-bysking
前端·vue.js
LuckySusu1 小时前
【HTML篇】script`标签中的 defer 与 async:深入解析异步加载 JavaScript 的差异
前端·html
CAD老兵1 小时前
在 TypeScript 中复用已有 Interface 的部分属性:完整指南
前端
一头小鹿1 小时前
【JS】原型和原型链 | 笔记整理
javascript
龚思凯1 小时前
Vue 3 中 watch 监听引用类型的深度解析与全面实践
前端·vue.js