基础入门
运算符
掌握算术、比较、逻辑、位运算符
运算符
JavaScript 提供丰富的运算符,用于数学计算、比较、逻辑判断。
学完本章你将: 掌握算术、比较、逻辑、赋值运算符。
算术运算符
javascript
let a = 10;
let b = 3;
console.log(a + b); // 13 加法
console.log(a - b); // 7 减法
console.log(a * b); // 30 乘法
console.log(a / b); // 3.33.. 除法
console.log(a % b); // 1 取余
console.log(a ** b); // 1000 指数(ES7)
// 自增自减
let x = 5;
x++; // 6(后置自增)
++x; // 7(前置自增)
x--; // 6
比较运算符
javascript
console.log(5 > 3); // true
console.log(5 >= 5); // true
console.log(5 < 3); // false
// 相等 vs 严格相等
console.log(5 == "5"); // true(类型转换后比较)
console.log(5 === "5"); // false(不转换类型,推荐使用)
console.log(null == undefined); // true
console.log(null === undefined); // false
逻辑运算符
javascript
// AND
console.log(true && false); // false
console.log(true && "hello"); // "hello"(返回最后一个真值)
// OR
console.log(false || true); // true
console.log(0 || "default"); // "default"(返回第一个真值)
// NOT
console.log(!true); // false
console.log(!"hello"); // false
console.log(!!"hello"); // true(双重否定转布尔)
// 空值合并(ES2020)
let value = null ?? "默认值";
console.log(value); // "默认值"
赋值运算符
javascript
let num = 10;
num += 5; // num = num + 5 → 15
num -= 3; // 12
num *= 2; // 24
num /= 4; // 6
num %= 4; // 2
num **= 3; // 8
三元运算符
javascript
let age = 20;
let status = age >= 18 ? "成年人" : "未成年人";
console.log(status); // "成年人"
// 可以嵌套(但不要太深)
let score = 85;
let grade = score >= 90 ? "A" :
score >= 80 ? "B" :
score >= 70 ? "C" : "D";
console.log(grade); // "B"