ES6学习教程之Map的常用方法总结
时间:2022-06-09 09:20:15|栏目:JavaScript代码|点击: 次
前言
ES6包含了许多新的语言特性,这会让JS变的更加强大且富有表现力。本文将给大家详细介绍关于ES6中Map的常用方法,话不多说,来一起看看详细的介绍:
1.Map 结构转为数组结构
比较快速的方法是结合使用扩展运算符(...)
let map = new Map([ [1, 'one'], [2, 'two'], [3, 'three'], ]); [...map.keys()] // [1, 2, 3] [...map.values()] // ['one', 'two', 'three'] [...map.entries()] // [[1,'one'], [2, 'two'], [3, 'three']] [...map] // [[1,'one'], [2, 'two'], [3, 'three']]
2.Map 循环遍历
Map 原生提供三个遍历器:
- keys():返回键名的遍历器。
- values():返回键值的遍历器。
- entries():返回所有成员的遍历器。
下面是使用实例。
let map = new Map([ ['F', 'no'], ['T', 'yes'], ]); for (let key of map.keys()) { console.log(key); } // "F" // "T" for (let value of map.values()) { console.log(value); } // "no" // "yes" for (let item of map.entries()) { console.log(item[0], item[1]); } // "F" "no" // "T" "yes" // 或者 for (let [key, value] of map.entries()) { console.log(key, value); } // 等同于使用map.entries() for (let [key, value] of map) { console.log(key, value); }
上面代码最后的那个例子,表示 Map 结构的默认遍历器接口(Symbol.iterator 属性),就是 entries 方法。
map[Symbol.iterator] === map.entries // true
3.Map 获取长度
map.size;
4.Map 获取第一个元素
const m = new Map(); m.set('key1', {}) m.set('keyN', {}) console.log(m.entries().next().value); // [ 'key1', {} ]
获取第一个key
console.log(m.keys().next().value); // key1
获取第一个value
console.log(m.values().next().value); // {}
总结