zoukankan      html  css  js  c++  java
  • ES6---Map数据结构

     // Map数据结构:数据结构保存的是键值,任何数据类型都可以作为键和值
    // 写法:
    1  const peoples = new Map()
    2  peoples.set('name', 'L')
    3  peoples.set('age', '25')
    4  peoples.set('sex', '男')
    5  console.log(peoples);
    6  //  {"name" => "L", "age" => "25", "sex" => "男"}
    // Map数据结构的一些用法:
            // 1. .size  返回Map数据成员的总数
            // 2. set(value,key) 向Map数据中添加一个键值,如果有,则会被更新
            // 3. get(key)获取Map数据中对应的键值,没有则返回undefined
            // 4. has(key)返回一个布尔值,判断Map数据中是否有这个键值
            // 5. deleted(key)删除Map数据中对应键值,返回布尔值,表示删除是否成功
            // 6. .clear 清空Map数据中的所有键值,没有返回值
    // 同样Map数据是可以遍历的
       // 1. 用for...of 遍历
    1  for (let key of peoples) {
    2             console.log(key); //  ["name", "L"]  ["age", "25"]  ["sex", "男"] 
    3         }
    // 2. 用forEach遍历
    1  peoples.forEach((value, key, map) => {
    2             console.log(value, key, map);
    3         });
    4         // 输出:L name Map(3) {"name" => "L", "age" => "25", "sex" => "男"}
    5         //      25 age Map(3) {"name" => "L", "age" => "25", "sex" => "男"}
    6         //      男 sex Map(3) {"name" => "L", "age" => "25", "sex" => "男"}
    // Map数据转换成数组 使用扩展运算符(...)
    1 var arr = [...peoples]
    2         console.log(arr);
    3         // 0: (2)["name", "L"]
    4         // 1: (2)["age", "25"]
    5         // 2: (2)["sex", "男"]
  • 相关阅读:
    前端性能优化-全链路质量监控体系建设
    前端性能优化-研发开发流程优化
    一次VLAN标签引发的网络事件的处置
    2001
    SpringBoot定时任务
    在el-dialog中使用ref找不到元素?
    el-table使用checkbox时,获取选中数据的id?
    SpringBoot邮件发送
    表单中el-select和el-input的长度不一致?
    element-ui如何修改el-dialog的样式?
  • 原文地址:https://www.cnblogs.com/1825224252qq/p/11785635.html
Copyright © 2011-2022 走看看