基本数据类型
JS 的值分为两大类:基本类型(按值保存)和引用类型(按地址保存)。基本类型有 7 种:number、string、boolean、undefined、null、symbol、bigint;引用类型主要是 object(数组、函数、日期本质上都是对象)。
检测类型用 typeof 运算符,但有两个著名的坑要记住:typeof null 返回 "object"(历史遗留 bug),数组用 typeof 也返回 "object",要判断数组请使用 Array.isArray()。
基本类型赋值是复制值本身,两份数据互不影响;引用类型赋值是复制地址,两个变量指向同一个对象,改一个另一个也会变——这是初学者最容易踩的坑之一。
本节要点7 种基本类型 + object 引用类型;typeof null 是 'object';判断数组用 Array.isArray;引用类型赋值共享同一个对象。
JavaScript
let n = 42; // number:整数小数都是 let s = '文本'; // string let b = true; // boolean let u; // undefined:声明了没赋值 let empty = null; // null:刻意表示"空" let big = 9007199254740993n; // bigint:超大整数 let sym = Symbol('id'); // symbol:全局唯一值 let obj = { name: '小明' }; // object:引用类型 let arr = [1, 2, 3]; // 数组也是 object console.log(typeof n); // number console.log(typeof obj); // object console.log(typeof arr); // object(数组的坑) console.log(Array.isArray(arr)); // true,判断数组用它 console.log(typeof null); // object(历史遗留 bug) console.log(typeof u); // undefined // 引用类型的坑:赋的是地址 const a = { x: 1 }; const b = a; // b 和 a 指向同一个对象 b.x = 99; console.log(a.x); // 99,a 也被改了!
📚 推荐阅读
来自万象云档的免费在线书籍,点击封面直接阅读




