一直以来使用数组和对象来定义数据模型,前几天在翻阅es6语法的时候,突然发现有一种map对象对操作键值对特别好用,而且代码更简洁明了,简直太棒了。
今天,我们就来一步步了解什么是Map对象,详细给大家介绍一下Map对象的属性和方法。希望大家以后再数据操纵方法多一种解决问题的方法,这是ECMA 6 新增的数据结构。
定义
Map对象保存键/值对,是键/值对的集合。任何值(对象或者原始值) 都可以作为一个键或一个值。Object结构提供了“字符串—值”的对应,Map结构提供了“值—值”的对应。
语法:
mapObj=new Map([iterable]);
登录后复制
iterable 可以是一个数组或者其他iterable 对象,其元素或为键值对,或为两个元素的数组。 每个键值对都会添加到新的 Map。null 会被当做 undefined。
Map实例
所有的Map实例都会继承自Map.prototype。
示例
Map对象类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。
let a=new Map();let b={p:'Hello World'};a.set(b,"content");a.get(b);//"content"a.has(b)//truea.delete(b)//truea.has(b) //false
登录后复制
作为构造函数,Map也可以接受一个数组作为参数。该数组的成员是一个个表示键值对的数组。
let map=new Map(['first','aaaaaa'],['second','bbbbbb']);;map.size();//2map.has('first');//truea.get(b);//'aaaaaa'map.has('second');//truea.get(b);//'bbbbbb'
登录后复制
以上就是js怎么定义map的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2730719.html