当前位置: 首页 > news >正文

珠海建站模板/扬州网络推广哪家好

珠海建站模板,扬州网络推广哪家好,mac系统做网站,wordpress七牛cdn1. 什么是 Map? Map 是一种数据结构,用于存储键值对。它的特点是: 键可以是任意类型的值(包括对象、函数等),而不仅仅是字符串或符号(Symbol)。 键值对的顺序是插入顺序。 提供了…

1. 什么是 Map

Map 是一种数据结构,用于存储键值对。它的特点是:

  • 键可以是任意类型的值(包括对象、函数等),而不仅仅是字符串或符号(Symbol)。

  • 键值对的顺序是插入顺序。

  • 提供了丰富的方法来操作键值对。


2. 创建 Map

可以通过 new Map() 创建一个空的 Map,或者传入一个二维数组来初始化 Map

示例:
// 创建一个空的 Map
const map1 = new Map();// 通过二维数组初始化 Map
const map2 = new Map([["name", "Alice"],["age", 25],[1, "One"],[{ key: "objKey" }, "Object Value"],
]);

3. Map 的常用方法

(1) set(key, value)

向 Map 中添加或更新一个键值对。

示例:
const map = new Map();
map.set("name", "Alice");
map.set("age", 25);
map.set(1, "One");console.log(map); // 输出: Map { 'name' => 'Alice', 'age' => 25, 1 => 'One' }

(2) get(key)

根据键获取对应的值。如果键不存在,返回 undefined

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);console.log(map.get("name")); // 输出: Alice
console.log(map.get("gender")); // 输出: undefined

(3) has(key)

判断 Map 中是否存在指定的键。

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);console.log(map.has("name")); // 输出: true
console.log(map.has("gender")); // 输出: false

(4) delete(key)

删除指定键的键值对。如果删除成功,返回 true;如果键不存在,返回 false

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);console.log(map.delete("name")); // 输出: true
console.log(map.delete("gender")); // 输出: false
console.log(map); // 输出: Map { 'age' => 25 }

(5) clear()

清空 Map 中的所有键值对。

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);map.clear();
console.log(map); // 输出: Map {}

(6) size

获取 Map 中键值对的数量。

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);console.log(map.size); // 输出: 2

(7) keys()values()entries()
  • keys():返回一个包含所有键的迭代器。

  • values():返回一个包含所有值的迭代器。

  • entries():返回一个包含所有键值对的迭代器。

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);console.log([...map.keys()]); // 输出: ['name', 'age']
console.log([...map.values()]); // 输出: ['Alice', 25]
console.log([...map.entries()]); // 输出: [['name', 'Alice'], ['age', 25]]

(8) forEach(callback)

遍历 Map 中的每个键值对。

示例:
const map = new Map([["name", "Alice"],["age", 25],
]);map.forEach((value, key) => {console.log(`${key}: ${value}`);
});
// 输出:
// name: Alice
// age: 25

4. Map 与 Object 的区别

特性MapObject
键的类型任意类型(包括对象、函数等)只能是字符串或符号(Symbol
键值对的顺序插入顺序不保证顺序
大小通过 size 属性获取需要手动计算
性能频繁增删键值对时性能更好频繁增删键值对时性能较差
默认键无默认键有原型链上的默认键

5. 使用场景

(1) 键是复杂类型

当键是对象或函数时,Map 是更好的选择。

示例:
const objKey = { key: "objKey" };
const map = new Map();
map.set(objKey, "Object Value");console.log(map.get(objKey)); // 输出: Object Value
(2) 需要保持插入顺序

Map 会按照插入顺序存储键值对。

示例:
const map = new Map();
map.set("a", 1);
map.set("b", 2);
map.set("c", 3);console.log([...map.keys()]); // 输出: ['a', 'b', 'c']
(3) 频繁增删键值对

Map 在频繁增删键值对时性能更好。

示例:
const map = new Map();
for (let i = 0; i < 10000; i++) {map.set(i, `value${i}`);
}
map.clear(); // 清空 Map

6. 总结

  • Map 是一种键值对的集合,键可以是任意类型。

  • 提供了丰富的方法来操作键值对,如 setgethasdeleteclear 等。

  • 与 Object 相比,Map 更适合键是复杂类型、需要保持插入顺序或频繁增删键值对的场景。

http://www.whsansanxincailiao.cn/news/31979874.html

相关文章:

  • 东莞网站建设公司/seo优化服务价格
  • 网站建设 客户定位/网站定制的公司
  • 山东天狐做网站cms/搜索引擎营销的优缺点及案例
  • 国内做网站群平台的公司/app营销策略
  • 网站推广做多大尺寸/北京千锋教育培训机构怎么样
  • 石家庄做网站/seo推广人员
  • 天津去山西高铁做哪个网站/站长之家官网登录入口
  • crm免费永久使用/优化网站seo
  • 网站文件下载系统/自己怎么优化关键词
  • 注册劳务公司需要多少钱/移动网站优化排名
  • 自己在线制作logo免费下载/宁波优化网站厂家
  • 广州做外贸网站的公司/世界杯竞猜
  • 心理咨询类微网站怎么做/软文营销的特点有哪些
  • 哪里有专做水果的网站/杭州新站整站seo
  • 免费的网站制作/磁力蜘蛛种子搜索
  • 河北网站制作多少钱/seo赚钱
  • 衢州网站网站建设/百度竞价排名的优缺点
  • 扬中网站制作公司/苏州seo安严博客
  • 物流公司网站建设/seo如何优化网站步骤
  • 网站站点断开/搜索量查询百度指数
  • wordpress博客页修改/seo网站权重
  • 网站建设电话销售话术/数据分析师35岁以后怎么办
  • 临沂高端网站建设/网站建设与网页设计制作
  • 网站做链接操作步骤/郴州网站建设推广公司
  • 中山网站搭建/百度公司
  • 重庆潼南网站建设报价/吉林seo推广
  • 桂市做网站的朋友/新媒体推广渠道有哪些
  • 开发商交房需要提供哪些证书/百度seo排名查询
  • wordpress 手册/福州seo公司
  • 那个网站做室内比较好的/长春seo外包