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的排列顺序 是按照添加顺序进行排列的。
以上。
ES6——数据结构 Map的更多相关文章
- ES6中Map数据结构学习笔记
很多东西就是要细细的品读然后做点读书笔记,心理才会踏实- Javascript对象本质上就是键值对的集合(Hash结构),但是键只能是字符串,这有一定的限制. 1234 var d = {}var e ...
- ES6 Set.Map.Symbol数据结构
一.ES6 Set数据结构 ES6新推出了Set数据结构,它与数组很类似,Set内部的成员不允许重复,每一个值在Set中都是唯一的,如果有重复的值出现会自动去重(也可以理解为忽略掉),返回的是集合对象 ...
- ES6数据结构Set、Map
一.Set数据结构 Set是无序的不可重复的多个value的集合体,Set结构是类似于数组结构,但是Set中的值都不能重复 常用的属性和方法 size:返回set实例的成员总数 add():添加某个值 ...
- ES6__数据结构 Map
/* 数据结构 Map */ /* * 字典:是用来存储不重复的key的hash结构.不同于集合(Set)的是,字典使用的是[键,值]的形式来储存数据的. *javaScript 的对象(Object ...
- Erlang 的新数据结构 map 浅析
更新:文中示例代码直接从Joe的新版 Erlang 书中摘抄而来,其中模式匹配的代码有错误,现已纠正.应该用 := 匹配字段,而不是 => . 即将发布的 Erlang 17 最大变化之一包括新 ...
- [ES6] 18. Map
ES6 provides Map, it is a set of k-v pair. Key can be number, string, object, function and even unde ...
- ES6 Set & Map
ES6 Set & Map OK ES6 Map https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Globa ...
- ES6中map和set用法
ES6中map和set用法 --转载自廖雪峰的官方网站 一.map Map是一组键值对的结构,具有极快的查找速度. 举个例子,假设要根据同学的名字查找对应的成绩,如果用Array实现,需要两个Arra ...
- es6的map()方法解释
es6的map()方法解释 map方法的作用不难理解,即“映射”,也就是原数组被“映射”成对应新数组.下面这个例子是数值项求平方: var data = [1, 2, 3, 4]; var arr ...
随机推荐
- Linux Centos 7 RabbitMQ 安装
下载地址:http://www.rabbitmq.com/releases/rabbitmq-server/ 找到rabbitmq-server-3.6.15-1.el7.noarch.rpm 第一步 ...
- Angularjs Ng_repeat中实现复选框选中并显示不同的样式
最近做了一个选择标签的功能,把一些标签展示给用户,用户选择自己喜欢的标签,就类似我们在购物网站看到的那种过滤标签似的: 简单的效果如图所示: 首先看一下html代码: 1 <!DOCTYPE h ...
- 使用NPM在项目中引入【lodash】
mkdir [文件名 ] 创建项目文件 mkdir lodashDemo cd [文件名] 进入项目文件 cd lodashDemo nvm -v 查看nvm版本,确定nvm已安装 nvm -v No ...
- 必看的 jQuery性能优化的38个建议
一.注意定义jQuery变量的时候添加var关键字 这个不仅仅是jQuery,所有javascript开发过程中,都需要注意,请一定不要定义成如下: $loading = $('#loading'); ...
- css实现类似heigth:100%的方法
1. 效果 2. 代码 2.1. Html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...
- Spark internal - 多样化的运行模式(上)
Spark的运行模式多种多样,在单机上既可以以本地模式运行,也可以以伪分布式模式运行.而当以分布式的方式运行在Cluster集群中时,底层的资源调度可以使用Mesos 或者是Hadoop Yarn , ...
- Xcode8 问题
ios10 定位问题,在plist中手动添加NSCameraUsageDescription http://www.cocoachina.com/bbs/read.php?tid-1685721.ht ...
- Java核心技术-Java的基本程序设计结构
1.一个简单的Java应用程序 public class FirstSample { public static void main(String[] args) { System.out.pring ...
- C 和 CPP 混合代码cmath编译出错
Visual Studio会将cmath内的一些列函数报错 解决方式:项目->属性->配置属性->C/C++ ->高级->编译为->选择编译为C++代码即可
- [C++] Template Function _ Any number of parameters
Template Function _ Any number of parameters #include<iostream> #include<cstdarg> using ...