JavaScript 的逻辑运算符用于处理布尔值或可转换为布尔值的表达式,包括 逻辑与、逻辑或和逻辑非。理解逻辑运算符的返回值规则和短路行为,能显著提升代码简洁性与效率。JavaScript的基本数据类型包括Undefined、Null、Boolean、Number和String五种,这些是ECMAScript标准定义的核心值类型,跟着小编一起详细了解下。
一、JavaScript 中的逻辑运算符
JavaScript 提供以下逻辑运算符,用于处理布尔值或可以转换为布尔值的表达式:
逻辑与(&&)
返回第一个为假(falsy)的操作数,或最后一个操作数。
示例:
javascript1console.log(true && false); // false
2console.log(1 && "hello"); // "hello"两个操作数为真,返回最后一个
3console.log(0 && null); // 0第一个为假,直接返回
逻辑或(||)
返回第一个为真(truthy)的操作数,或最后一个操作数。
示例:
javascript1console.log(false || true); // true
2console.log(0 || "default"); // "default"(第一个为假,返回第二个)
3console.log(null || undefined); // undefined(都为假,返回最后一个)
逻辑非(!)
将操作数转换为布尔值并取反。
示例:
javascript1console.log(!true); // false
2console.log(!0); // true(0 是 falsy,取反后为 true)
短路行为:
&& 和 || 会短路求值(即如果结果已确定,不会执行后续操作数)。

二、JavaScript 的基本数据类型
JavaScript 有 7 种基本数据类型(ES6+):
number
数值类型,整数、浮点数、Infinity、NaN。
示例:42、3.14、NaN。
string
字符串类型(文本)。
示例:"hello"、'world'。
boolean
布尔值(true/false)。
null
表示“空”或“无值”(typeof 返回 object,这是历史遗留问题)。
undefined
变量未定义时的默认值。
symbol(ES6)
唯一且不可变的值,用于对象属性的键。
示例:Symbol("id")。
bigint(ES2020)
大整数,用于表示任意精度的整数。
示例:9007199254740991n。
注意:
使用 typeof 运算符可检测类型。
对象属于引用类型,不属于基本数据类型。
示例总结
javascript1// 逻辑运算符
2console.log(10 > 5 && "yes"); // "yes"
3console.log(false || 42); // 42
4console.log(!null); // true
5
6// 基本数据类型
7let age = 25; // number
8let name = "Alice"; // string
9let isActive = true; // boolean
10let nothing = null; // null
11let x; // undefined
12let id = Symbol("id"); // symbol
13let bigNum = 9007199254740991n; // bigint
理解这些概念对掌握 JavaScript 的核心行为至关重要,这些运算符支持短路求值,即提前确定结果时跳过后续操作数。数据类型判断可使用typeof运算符或Object.prototype.toString()方法。