Appearance
Map 来替代对象
本节目标:理解“Map 来替代对象”的核心思路,并能把它用于实际开发或面试表达。 你可以使用 Map 来替代对象,Map 是一种键值对的集合,类似于对象,但提供了更多的功能和灵活性。以下是如何将你的 specialFiles 对象转换为 Map 的示例: javascript 复制 const specialFiles = new Map([ ['page', 'page.vue'], ['layout', 'layout.vue'], ['loading', 'loading.vue'], ['error', 'error.vue'], ['not-found', 'not-found.vue'],]); // 使用示例console.log(specialFiles.get('page')); // 输出: 'page.vue'console.log(specialFiles.get('layout')); // 输出: 'layout.vue' 主要区别:
- 键的类型:Map 的键可以是任意类型(包括对象、函数等),而对象的键只能是字符串或 Symbol。
- 顺序:Map 会保持插入顺序,而对象的属性顺序不一定可靠。
- 大小:Map 有一个 size 属性可以直接获取键值对的数量,而对象需要手动计算。
常用方法:
- set(key, value):添加或更新键值对。
- get(key):获取指定键的值。
- has(key):检查是否存在某个键。
- delete(key):删除指定键值对。
- clear():清空所有键值对。
- size:获取键值对的数量。 > 来自 <https://chat.deepseek.com/a/chat/s/2916bb48-322b-43a0-bebf-9958acb1b5d0>
