⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

JavaScript Set 与 Map 深入

ES6 Set/Map:Set(唯一值集合/add/delete/has/size/clear/遍历/交集new Set([...a].filter(x=>b.has(x)))/并集/差集、Map(键值对/键可以是任意类型对象函数/get/set/has/delete/size/entries遍历/forEach)、WeakSet/WeakMap弱引用GC友好/不可枚举 · 难度:入门 · +10XP

JavaScript Set 与 Map —— 更强大的集合类型

Set(唯一值集合)和Map(键值对,键可以是任意类型)是ES6引入的两种新集合类型,比数组和对象更适合特定场景。Set自动去重,Map的键可以是对象。

Set

const set = new Set([1, 2, 2, 3]); // {1, 2, 3} 自动去重
set.add(4).has(2); // true
set.delete(3);
// 交集
const intersection = new Set([...a].filter(x => b.has(x)));

Map

const map = new Map();
const objKey = { id: 1 };
map.set(objKey, '对象作为键'); // 普通对象做不到!
map.set('name', '小明').get('name'); // '小明'
for (const [key, value] of map) { console.log(key, value); }

动手练习

  1. 基础练习:用Set实现数组去重。
  2. 进阶应用:用Map实现一个LRU缓存。
  3. 项目实战:在项目中用Map替代对象存储动态键的数据。
Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 231 篇
0 完成
🔥 0