congxine笔记
ONLINE
返回科普
KNOWLEDGE / NOTE

JavaScript 数据类型

MDN · 站内原创整理

原始值与对象的行为不同,类型转换和相等比较需要在边界处写清楚。

核心说明

JavaScript 的值分为原始值和对象。字符串、数字、布尔值、null、undefined、symbol 与 bigint 直接表示值;对象、数组和函数通过引用被操作。

关键点

  • typeof null 返回 object 是历史遗留行为,判断 null 应使用 value === null。
  • 对象比较比较的是引用,不是内容;两个结构相同的对象也不一定相等。
  • 处理未知数据时优先使用 unknown,再通过类型守卫缩小范围。
const value: unknown = { name: "congxine" }
if (typeof value === "object" && value !== null) {
  console.log(value)
}