ES6——数据结构 Map

数据结构 Map

  字典: 用来存储不重复key的 Hash结构。不同于集合(Set)的是,字典使用的是
  [键,值] 的形式来存储数据的。

  JavaScript 的对应那个(Object:{}) 只能用字符串当做键。这给他的使用带来了很大的限制。

    var data1={a:"1"},data2={b:"2"},obj={};
    obj[data1]=1;
    obj[data2]=2;
    console.log(obj);

1、创建一个 Map

  const map=new Map([
    ["a",1],
    ["b",2]
  ]);

  console.log(map);

2、Map类的属性

    console.log(map.size);

3、Map 类的方法

  // set(key,value) 设置键名key 对应的键值 为 value , 然后返回整个 Map结构。如果 key已经有值。则键值会被更新,否则就新生成改键。
    map.set("key","value").set("set","fq").set("key","lei")
    console.log(map);

  //get(key) get 方法读取key 对应的键值,如果找不到key,返回undefined。
    console.log(map.delete("a"));

  //has(key) 判断某个键是否存在。
    console.log(map.has("a"));

  //clear() 清除所有数据,没有返回值。
    map.clear();

  //keys() 返回键名的遍历器。
    console.log(map.keys());

  //values() 返回键值的遍历器。
    console.log(map.values());

  //entries() 返回键值对的遍历器。
    console.log(map.entries());

  //forEach() 使用回调函数遍历每个成员。
    map.forEach(function(key,value,map){
      console.log(key+":"+value);
    });:

  //map在使用过程中的ixie注意事项:
    map.set(NaN,10).set(NaN,100);
    console.log(map);

//map里面的key的排列顺序 是按照添加顺序进行排列的。

以上。

原文地址:https://www.cnblogs.com/zyhbook/p/9425604.html

时间: 2024-10-13 21:40:26

ES6——数据结构 Map的相关文章

[ES6] 18. Map

ES6 provides Map, it is a set of k-v pair. Key can be number, string, object, function and even undefined. var m = new Map(); Methods: 1. set(k,v) m.set("edition", 6) // 键是字符串 m.set(262, "standard") // 键是数值 m.set(undefined, "nah&q

Java数据结构Map,List,Set及Queue相关的类图

闲来无事,把util包中相关的数据结构的类图及其关系画了一下,给大家分享一下. 总览图:  Map:  List and Set: Queue: Java数据结构Map,List,Set及Queue相关的类图

JAVA数据结构——Map之HashMap

JAVA数据结构--Map之HashMap 一.原型及简介 原型:public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable 简介:HashMap基于散列表实现的一个key-value数据结构,能够实现通过key值快速查找.HashMap继承自AbstractMap抽闲类,实现了Map接口. 二.数据结构原理介绍 如下图所示,HashMap

es6的map()方法解释

es6的map()方法解释 map方法的作用不难理解,即“映射”,也就是原数组被“映射”成对应新数组.下面这个例子是数值项求平方: var data = [1, 2, 3, 4]; var arrayOfSquares = data.map(function (item) { return item * item; }); alert(arrayOfSquares); // 1, 4, 9, 16 callback需要有return值,如果没有,就像下面这样: var data = [1, 2,

ES6新增数据结构Map的用法

Javascript的Object本身就是键值对的数据结构,但实际上属性和值构成的是”字符串-值“对,属性只能是字符串,如果传个对象字面量作为属性名,那么会默认把对象转换成字符串,结果这个属性名就变成”[object Object]“. ES6提供了”值-值“对的数据结构,键名不仅可以是字符串,也可以是对象.它是一个更完善的Hash结构. 特性 1.键值对,键可以是对象. const map1 = new Map() const objkey = {p1: 'v1'} map1.set(objk

ES6中map数据结构学习

在项目中遇到一个很恶心的需求,然后发现ES6中的map可以解决,所以简单学习了一下map. Javascript的Object本身就是键值对的数据结构,但实际上属性和值构成的是“字符串-值”对,属性只能是字符串,如果传个对象字面量作为属性名,那么会默认把对象转换成字符串,结果这个属性名就变成“[object Object]”:. ES6提供了“值-值”对的数据结构,键名不仅可以是字符串,也可以是对象.它是一个更完善的Hash结构. 1.键值对,键可以是对象 const map1 = new Ma

了解ES6的Map数据结构

<script> /* Map数据结构是ES6推出的,它是一个类对象,普通对象的键值只能使用string,而map数据结构的键值可以使用任意对象,不受限制 Map是一个构造函数,通过new Map() 来构建 如果需要键值对的数据格式,Map比Object更加适合 如果对同一个键进行重复赋值,那么前面的值会被后替换 拥有于set数据结构同样的遍历方法,遍历的顺序就是数据插入的顺序 转化为数组结构可以使用展开运算符 ... */ let map = new Map([ [{a:'a'},123]

ES6中map数据结构

key值可以任意值或对象,value值可以是任意值或对象 let json={ name:'eternity', skill:'java' }; let map=new Map(); map.set(json,'I am'); console.log(map); map.set('zhang',json); console.log(map); //map增删查 map.get(json); //删 map.delete('zhang'); //全删 map.clear(); //查找 map.h

2.数据结构map.html

map是ES提供的一种字典数据结构. 字典结构--用来存储不重复key的hash结构.不同于集合(set)的是,字典使用的是键值对的形式来存储数据 JavaScript对象(object:{})只能用字符串来当key,这对使用带来了不便 为了解决这个问题,ES6提供了map数据结构.其类似于对象,也是键值对的集合,但"key"的范围不仅限于字符串,而是各种类型的值都可以当做key.也就是说,object提供了"字符串-值"的对应结构,map则提供的是"值-