在 JavaScript 中,数据类型可以分为两大类:原始数据类型(Primitive Types)和引用数据类型(Reference Types)。以下是详细的分类:
原始数据类型(Primitive Types)
原始数据类型是不可变的,它们直接存储值。JavaScript 中的原始数据类型包括以下几种:
Undefined
- 表示未定义的值。通常用于变量声明但未赋值的情况。
- 例如:
let x; console.log(x); // 输出: undefined
Null
- 表示一个空值,或不存在的对象。
- 例如:
let y = null; console.log(y); // 输出: null
Boolean
- 表示逻辑值:
true
或false
。 - 例如:
let isTrue = true; console.log(isTrue); // 输出: true
- 表示逻辑值:
Number
- 表示整数和浮点数。
- 例如:
let num = 42; let floatNum = 3.14;
String
- 表示字符序列(文本)。
- 例如:
let text = "Hello, World!";
Symbol
- 表示唯一的、不可变的标识符。
- 例如:
let sym = Symbol("description");
BigInt
- 表示任意精度的整数。用于表示比
Number
类型能表示的范围更大的整数。 - 例如:
let bigIntNum = 9007199254740991n;
- 表示任意精度的整数。用于表示比
引用数据类型(Reference Types)
引用数据类型是可变的,它们存储的是对值的引用(即内存地址)。JavaScript 中的引用数据类型主要是对象,对象可以进一步细分为:
Object
- 通用对象类型。可以包含多个键值对。
- 例如:
let obj = {name: "Alice", age: 25};
Array
- 一种特殊的对象类型,用于存储有序集合。
- 例如:
let arr = [1, 2, 3, 4, 5];
Function
- 一种特殊的对象类型,用于定义可执行的代码块。
- 例如:
function greet() { console.log("Hello!"); }
Date
- 内置对象,用于处理日期和时间。
- 例如:
let now = new Date();
RegExp
- 内置对象,用于表示正则表达式,用于模式匹配。
- 例如:
let regex = /hello/i;
Map 和 Set
- ES6 引入的集合类型。
Map
存储键值对,Set
存储唯一值。 - 例如:
let map = new Map(); map.set("key", "value"); let set = new Set(); set.add(1); set.add(2);
- ES6 引入的集合类型。
WeakMap 和 WeakSet
- 也是 ES6 引入的集合类型,但与
Map
和Set
不同,它们的键是“弱引用”的,不会被垃圾回收机制保留。 - 例如:
let weakMap = new WeakMap(); let obj = {}; weakMap.set(obj, "value"); let weakSet = new WeakSet(); weakSet.add(obj);
- 也是 ES6 引入的集合类型,但与
了解这些数据类型是掌握 JavaScript 基础的关键,它们决定了变量的存储方式和行为。
学在每日,进无止境!更多精彩内容请关注微信公众号。

原文出处:
内容由AI生成仅供参考,请勿使用于商业用途。如若转载请注明原文及出处。
出处地址:http://www.07sucai.com/tech/60.html
版权声明:本文来源地址若非本站均为转载,若侵害到您的权利,请及时联系我们,我们会在第一时间进行处理。