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'

相关推荐
DC...14 分钟前
vue滑块组件设计与实现
前端·javascript·vue.js
Mars狐狸22 分钟前
AI项目改用服务端组件实现对话?包体积减小50%!
前端·react.js
H5开发新纪元31 分钟前
Vite 项目打包分析完整指南:从配置到优化
前端·vue.js
嘻嘻嘻嘻嘻嘻ys32 分钟前
《Vue 3.3响应式革新与TypeScript高效开发实战指南》
前端·后端
恋猫de小郭1 小时前
腾讯 Kuikly 正式开源,了解一下这个基于 Kotlin 的全平台框架
android·前端·ios
2301_799404911 小时前
如何修改npm的全局安装路径?
前端·npm·node.js
(❁´◡双辞`❁)*✲゚*1 小时前
node入门和npm
前端·npm·node.js
韩明君1 小时前
前端学习笔记(四)自定义组件控制自己的css
前端·笔记·学习
tianchang1 小时前
TS入门教程
前端·typescript
吃瓜群众i1 小时前
初识javascript
前端