【Symbol 是 JavaScript 中的一个基本数据类型】

Symbol 是 JavaScript 中的一个基本数据类型,主要用途有:

  1. 创建唯一的标识符
let s1 = Symbol();
let s2 = Symbol();
console.log(s1 === s2);  // false,每个 Symbol 都是唯一的
  1. 用作对象的私有属性
const privateKey = Symbol('private');
const obj = {
    [privateKey]: "这是私有数据",
    name: "公开数据"
};
console.log(obj[privateKey]);  // 只有知道 Symbol 的人才能访问
  1. 防止属性名冲突
const name1 = Symbol('name');
const name2 = Symbol('name');
const obj = {
    [name1]: "张三",
    [name2]: "李四"
};
  1. 作为系统内置的特殊标识
// 例如迭代器的 Symbol
const arr = [1, 2, 3];
console.log(arr[Symbol.iterator]);  // 数组的迭代器方法

主要特点:

  • 唯一性:每个 Symbol 都是独一无二的
  • 不会出现在对象的常规属性遍历中
  • 可以用作私有属性的模拟
  • 常用于定义对象的特殊行为(如迭代器)
posted @ 2025-04-14 17:18  十三山入秋  阅读(11)  评论(0)    收藏  举报