资讯专栏INFORMATION COLUMN

ES6 Map常用方法总结

darcrand / 2135人阅读

摘要:结构转为数组结构比较快速的方法是结合使用扩展运算符循环遍历原生提供三个遍历器返回键名的遍历器。下面是使用实例。或者等同于使用上面代码最后的那个例子,表示结构的默认遍历器接口属性,就是方法。获取长度获取第一个元素获取第一个获取第一个

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); // {}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/84586.html

相关文章

  • ES6常用数据方法总结

    摘要:以上个方法及以上才支持。不过可以通过转义支持低版本。以上均不改变原数组。让数组的前后两项进行某种计算,返回最终操作的结果。 1. forEach() let array = [1,2,3,4]; array.forEach((item, index, array) => {   console.log(item); }); forEach会遍历数组, 没有返回值, 不允许在循环体内写r...

    gitmilk 评论0 收藏0
  • ES6、7、8常用新特性总结(超实用)

    摘要:定义类常用新特性在一个数组或者列表中检查是否存在一个值还能在字符串中使用除了增强了可读性语义化,实际上给开发者返回布尔值,而不是匹配的位置。 ES6常用新特性 1. let && const let 命令也用于变量声明,但是作用域为局部 { let a = 10; var b = 1; } 在函数外部可以获取到b,获取不到a,因此例如for循环计数器就适...

    atinosun 评论0 收藏0
  • ES6、7、8常用新特性总结(超实用)

    摘要:定义类常用新特性在一个数组或者列表中检查是否存在一个值还能在字符串中使用除了增强了可读性语义化,实际上给开发者返回布尔值,而不是匹配的位置。 ES6常用新特性 1. let && const let 命令也用于变量声明,但是作用域为局部 { let a = 10; var b = 1; } 在函数外部可以获取到b,获取不到a,因此例如for循环计数器就适...

    Xufc 评论0 收藏0
  • JS数组去重总结

    摘要:数组去重,一般会在面试的时候才会碰到,要求手写数组去重方法的代码。在实际项目中碰到的数组去重,一般都是后台去处理,很少让前端处理数组去重。数组去重的方法一利用去重中最常用如果不考虑兼容性,这种去重的方法代码最少。 数组去重,一般会在面试的时候才会碰到,要求手写数组去重方法的代码。如果是被提问到,数组去重的方法有哪些?你能答出其中的10种,面试官很有可能对你刮目相看。 在实际项目中碰到的...

    whinc 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<