ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【ES6复习笔记】Map(14) [打印本页]

作者: 伤心客    时间: 2024-12-29 01:58
标题: 【ES6复习笔记】Map(14)
概念

Map 是 JavaScript 中的一种数据结构,它答应你存储键值对,并且可以通过键来访问对应的值。在本教程中,我们将学习怎样声明、添加、删除、获取和遍历 Map 聚集。
ES6 提供了 Map 数据结构。它类似于对象,也是键值对的聚集。但是 “键” 的范围不限于字符串,各种范例的值(包括对象)都可以当作键。Map 也实现了 iterator 接口,所以可以利用『扩展运算符』和「for…of…』进行遍历。Map 的属性和方法。
声明 Map

起首,我们需要声明一个 Map 对象。在 JavaScript 中,你可以利用 new Map() 来创建一个新的 Map 实例。
  1. let m = new Map();
复制代码
Map的属性和方法:

添加元素

你可以利用 set 方法向 Map 中添加元素。set 方法接受两个参数:键和值。
  1. m.set('name', '星达网络');
  2. m.set('change', function() {
  3.     console.log("我们可以改变你!!");
  4. });
  5. let key = {
  6.     school: 'xkadmin'
  7. };
  8. m.set(key, ['北京', '上海', '深圳']);
复制代码
获取元素数量

你可以利用 size 属性来获取 Map 中元素的数量。
  1. console.log(m.size);
复制代码
删除元素

你可以利用 delete 方法从 Map 中删除指定的键值对。
  1. m.delete('name');
复制代码
获取元素

你可以利用 get 方法获取 Map 中指定键的值。
  1. console.log(m.get('change'));
  2. console.log(m.get(key));
复制代码
清空 Map

你可以利用 clear 方法清空 Map 中的所有元素。
  1. m.clear();
复制代码
遍历 Map

你可以利用 for...of 循环来遍历 Map 中的所有键值对。
  1. for(let v of m) {
  2.     console.log(v);
  3. }
复制代码
完整代码示例

下面是一个完整的代码示例,展示了怎样利用 Map 聚集。
  1. <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Map</title></head><body>    <script>        //声明 Map        let m = new Map();
  2.         //添加元素        m.set('name', '星达网络');        m.set('change', function() {            console.log("我们可以改变你!!");        });        let key = {            school: 'xkadmin'        };        m.set(key, ['北京', '上海', '深圳']);        //size        console.log(m.size);
  3.         //删除        m.delete('name');
  4.         //获取        console.log(m.get('change'));        console.log(m.get(key));        //清空        // m.clear();
  5.         //遍历        for(let v of m) {            console.log(v);        }        // console.log(m);    </script></body></html>
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4