zoukankan      html  css  js  c++  java
  • ES6 Map对象以及Set对象

    首先介绍一下Set对象

    Set对象是值的集合,你可以按照插入的顺序迭代它的元素。 Set中的元素只会出现一次,即 Set 中的元素是唯一的。

    语法如下

    const set1 = new Set([1, 2, 3, 4, 5]);

    console.log(set1.has(1));
    // expected output: true

    console.log(set1.has(5));
    // expected output: true

    console.log(set1.has(6));
    // expected output: false

    运行结果如图

    当我们需要将一个数组去重的时候便可以用set,简单并快捷

    Map对象

    普通的object对象是键值对的集合,但对于它的键却有着严苛的要求,必须是字符串,这样无论我们传入的是何类型都会被强制转换为字符串

    Map函数类似于对象,但它是一个更加完美的简直对集合,键可以是任意类型

    1.Map基本使用

    let m = new Map();
    m.set('c', 'content')
    m.get('c')//content
    m.size//1
    m.has('c') // true
    m.delete('c')
    m.has('c')
    m.clear()也可以通过构造函数直接生成var map= new Map([["a",1],["b",2]]);参数必须是一个二维数组,每一个数组都由两个元素组成,组成键值对存入Map对象中,null会被当成undefined

    2.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);
      }



  • 相关阅读:
    IIS和tomcat共用80端口
    CYQ.Data V5 从入门到放弃ORM系列:教程
    C#中==与Equals方法的区别
    一个简单得不能再简单的“ORM”了
    msbuild ConfuserEx.Build 加密
    C#生成注册码
    从多个XML文档中读取数据用于显示webapi帮助文档
    ASP.NET MVC SSO 单点登录设计与实现
    ASP.NET MVC Bootstrap极速开发框架
    Nodejs初阶之express
  • 原文地址:https://www.cnblogs.com/yzxyzx/p/12640929.html
Copyright © 2011-2022 走看看