ES6基础----Map的使用

目录

[Map 是 Es6 新增的数据结构,主要用于存储键值对](#Map 是 Es6 新增的数据结构,主要用于存储键值对)

[1、size 属性返回 Map 的长度](#1、size 属性返回 Map 的长度)

[2、set() 方法用于向 Map 中写入内容 ---键可以用字符串或者用其他数据类型,但是 Object 只能是字符串](#2、set() 方法用于向 Map 中写入内容 ---键可以用字符串或者用其他数据类型,但是 Object 只能是字符串)

[3、get() 方法用于得到对应的值](#3、get() 方法用于得到对应的值)

[4、delete() 方法删除对应的元素 ---返回布尔值](#4、delete() 方法删除对应的元素 ---返回布尔值)

[5、has() 方法判断某个元素是否在 Map 中 --返回布尔值](#5、has() 方法判断某个元素是否在 Map 中 --返回布尔值)

[6、 clear() 清除 Map 中的全部内容 --返回所有值,没值返回undefined](#6、 clear() 清除 Map 中的全部内容 --返回所有值,没值返回undefined)

[7、 keys() 遍历得到键值](#7、 keys() 遍历得到键值)

[8、 values() 遍历得到值](#8、 values() 遍历得到值)

[9、entries() 遍历得到键值对](#9、entries() 遍历得到键值对)

[10、 forEach() 遍历得到 Map 所有值](#10、 forEach() 遍历得到 Map 所有值)


Map 是 Es6 新增的数据结构,主要用于存储键值对

// Object 提供 字符串--值

// Map 提供 值--值

复制代码
 let map = new Map();

console.log(map);//Map(0) {size: 0}

1、size 属性返回 Map 的长度

复制代码
 console.log(map.size);//0

2、set() 方法用于向 Map 中写入内容 ---键可以用字符串或者用其他数据类型,但是 Object 只能是字符串

复制代码
//                           键     值

        console.log(map.set("name","张三"));//Map(1) {'name' => '张三'}

        console.log(map.set("age",100));//Map(2) {'name' => '张三', 'age' => 100}

        console.log(map.set("address","昆明"));//Map(3) {'name' => '张三', 'age' => 100, 'address' => '昆明'}

        console.log(map.set(100,"昆明"));//Map(4) {'name' => '张三', 'age' => 100, 'address' => '昆明', 100 => '昆明'}

3、get() 方法用于得到对应的值

复制代码
console.log(map.get(100));//昆明

console.log(map.get("name"));//张三

console.log(map);//Map(4) {'name' => '张三', 'age' => 100, 'address' => '昆明', 100 => '昆明'}

4、delete() 方法删除对应的元素 ---返回布尔值

复制代码
console.log(map.delete(100));//true

console.log(map);//Map(3) {'name' => '张三', 'age' => 100, 'address' => '昆明'}

5、has() 方法判断某个元素是否在 Map 中 --返回布尔值

复制代码
console.log(map.has(100));//false

console.log(map.has("name"));//true

6、 clear() 清除 Map 中的全部内容 --返回所有值,没值返回undefined

复制代码
console.log(map.clear());//undefined   ---打印清除后的值

遍历取值

7、 keys() 遍历得到键值

复制代码
// console.log(map.keys());//MapIterator {'name', 'age', 'address'}   ---拿到对象的模式的键值

        for(let i of map.keys()){       //--取单独的值

            console.log(i);// name  age  address

        }

8、 values() 遍历得到值

复制代码
//  console.log(map.values());//MapIterator {'张三', 100, '昆明'}   ---拿到对象的模式的键值

        for(let i of map.values()){

            console.log(i); // 张三 100 昆明

        }

9、entries() 遍历得到键值对

复制代码
//  console.log(map.entries());//MapIterator {'name' => '张三', 'age' => 100, 'address' => '昆明'}   ---拿到对象的模式的键值

        for(let [i,y] of map.entries()){

            console.log(i,y);//  name 张三    age 100    address 昆明

        }

10、 forEach() 遍历得到 Map 所有值

复制代码
//只得到值

        map.forEach((a)=>{

            console.log(a);

        })


 //得到键和值

//                  值-键名

        map.forEach((a,b)=>{

            console.log(a,b);

        })
相关推荐
咖啡の猫2 小时前
Shell脚本-for循环应用案例
前端·chrome
百万蹄蹄向前冲4 小时前
Trae分析Phaser.js游戏《洋葱头捡星星》
前端·游戏开发·trae
朝阳5815 小时前
在浏览器端使用 xml2js 遇到的报错及解决方法
前端
GIS之路5 小时前
GeoTools 读取影像元数据
前端
ssshooter5 小时前
VSCode 自带的 TS 版本可能跟项目TS 版本不一样
前端·面试·typescript
你的人类朋友5 小时前
【Node.js】什么是Node.js
javascript·后端·node.js
Jerry6 小时前
Jetpack Compose 中的状态
前端
dae bal7 小时前
关于RSA和AES加密
前端·vue.js
柳杉7 小时前
使用three.js搭建3d隧道监测-2
前端·javascript·数据可视化
lynn8570_blog7 小时前
低端设备加载webp ANR
前端·算法