zoukankan      html  css  js  c++  java
  • ES6

    Map是一组键值对的结构,具有极快的查找速度。

    声明 

    var map = new Map();
    const getmap = new Map([['aa',1],['bb',2]]);

    设值

    map.set("key","value");


    由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉:

    例如: map.set("Alan","B");

        map.set("Alan","A");

         map.get("Alan);  // A

        map.set("change",function(){///});

    size (等同于length)

    map.size();

    取值

    map.get("key");

    判断key是否存在

    map.has("key");

     删除key

    map.delete("key");

     清空map

    map.clear();

    Array 中也存在map方法,容易让初始者混淆。 这是两个完全不懂得概念和方法。

    array.map(function(currentValue,index,arr), thisValue)   改方法是属于数组的一种操作方法


    例如 array = [1,2,3,4,5];

    currentValue 就是循环array中的每一个值  1 2 3 4 5

    index 就是循环array的index值 0 1 2 3 4

    arr 就是 array本身[1,2,3,4,5]

    如果想要在array的基础上,计算出新的一个数组,同时该数组还不能被改变,那么就用到了.map()方法

    var array2 = array.map(function(currentValue, index, arr){
    
      return currentValue * 2 
    
    })

    此时就会返回新数组array2 = [2,4,6,8,10 ]

    此时 array 没有改变 还是 [1,2,3,4,5]

    set是类似组数,返回的对象只有值,没有键值。创建自带去重

    声明 

    var set = new Set();

    设值

    set.add("newValue");

    因为set是没有key值的,所以只能添加一个

    size (等同于length)

    set.size();

    判断key是否存在

    set.has("newValue");

     删除元素

    set.delete("newValue");

     清空set

    set.clear();

     set可用for...of...遍历

    for(let v of set){

      console.log(v)

    }

  • 相关阅读:
    学习SpringMVC——从HelloWorld开始
    线性队列
    线性表之链表
    线性表之顺序表
    nextSibling 属性与 nextElementSibling 属性的异同
    JavaScript数组增删方法总结
    class关键字
    JS三座大山_单线程&EventLoop
    JS三座大山_闭包
    JS三座大山_原型与原型链
  • 原文地址:https://www.cnblogs.com/ningxin/p/14415665.html
Copyright © 2011-2022 走看看