- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第
JS中的Map对象用法及说明
目录JS中的Map对象JS中Map和普通对象Map对象Object对象Objects和maps的比较总结
JS中的Map对象
1.js创建map对象
varmap=newMap();
2.将键值对放入map对象
map.set(key,value)
map.set(key1,value1)
map.set(key2,value2)
3.根据key获取map值
map.get(key)
4.删除map指定对象
deletemap[key]
或
map.delete(key)
5.循环遍历map
map.forEach(function(key){
console.log(key,key)?//输出的是map中的value值
})
JS中Map和普通对象
Map对象
Map对象保存键值对。任何值(对象,数组,字符串,数值,布尔,null,undefined)都可以作为一个键或一个值。
一个Map对象在迭代时会根据对象中元素的插入顺序来进行一个for...of循环在每次迭代后会返回一个形式为[key,value]的数组。
Object对象
Object构造函数创建一个对象包装器。内容为成对的名称(字符串)与值(任何值),其中名称通过冒号与值分隔。
Objects和maps的比较
Objects和Maps类似的是,它们都允许你按键存取一个值、删除键、检测一个键是否绑定了值。因此(并且也没有其他内建的替代方式了)过去我们一直都把对象当成Maps使用。不过Maps和Objects有一些重要的区别,在下列情况里使用Map会是更好的选择:
MapObject意外的键Map默认情况不包含任何键。只包含显式插入的键。一个Object有一个原型,原型链上的键名有可能和你自己在对象上的设置的键名产生冲突。注意:虽然ES5开始可以用Object.create(null)来创建一个没有原型的对象,但是这种用法不太常见。键的类型一个Map的键可以是任意值,包括函数、对象或任意基本类型。一个Object的键必须是一个String或是Symbol。键的顺序Map中的key是有序的。因此,当迭代的时候,一个Map对象以插入的顺序返回键值。一个Object的键是无序的注意:自ECMAScript2015规范以来,对象确实保留了字符串和Symbol键的创建顺序;因此,在只有字符串键的对象上进行迭代将按插入顺序产生键。SizeMap的键值对个数可以轻易地通过size属性获取Object的键值对个数只能手动计算迭代Map是iterable的,所以可以直接被迭代。迭代一个Object需要以某种方式获取它的键然后才能迭代。性能在频繁增删键值对的场景下表现更好。在频繁添加和删除键值对的场景下未作出优化。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
您可能关注的文档
最近下载
- 广播电视技术能手竞赛部分试题.pdf VIP
- 郑雪人格心理学笔记.doc VIP
- 石油环保培训课件.pptx VIP
- 公司财务审计报告范文(通用9篇).pdf VIP
- GBT 9792-2003.pdf
- Q_SY 1774.1-2015 天然气管道压缩机组技术规范 第1部分:现场测试.docx VIP
- 石油行业环保培训课件.pptx VIP
- 石油环保培训课件.pptx VIP
- 防错法考试题及答案.doc
- 鸟粪石结晶法处理猪场污水的研究现状及发展趋势 STATUS AND DEVELOPMENT OF STRUVITE CRYSTALLIAZATION FOR SWINE WASTEWATER TREATMENT.pdf VIP
文档评论(0)