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'

相关推荐
不爱吃饭爱吃菜21 分钟前
uniapp微信小程序一键授权登录
前端·javascript·vue.js·微信小程序·uni-app
heart000_123 分钟前
从零开始打造个人主页:HTML/CSS/JS实战教程
javascript·css·html
90后小陈老师1 小时前
3D个人简历网站 5.天空、鸟、飞机
前端·javascript·3d
chenbin___1 小时前
react native text 显示 三行 超出部分 中间使用省略号
javascript·react native·react.js
漫路在线5 小时前
JS逆向-某易云音乐下载器
开发语言·javascript·爬虫·python
不爱吃糖的程序媛5 小时前
浅谈前端架构设计与工程化
前端·前端架构设计
BillKu6 小时前
Vue3 Element Plus 对话框加载实现
javascript·vue.js·elementui
郝YH是人间理想7 小时前
系统架构设计师案例分析题——web篇
前端·软件工程
Evaporator Core7 小时前
深入探索:Core Web Vitals 进阶优化与新兴指标
前端·windows
初遇你时动了情7 小时前
html js 原生实现web组件、web公共组件、template模版插槽
前端·javascript·html