[JavaScript] Map对象
1 前言
工欲善其事,必先利其器。这是一款以前在前端项目中没有使用过的、有趣的对象,咱来看看如何使用~
2 并非arrayObj.map(function)
1 2 3 4 | //arrayObj.map与arrayObj.forEach方法类似 [].map( function (itemValue, itemIndex, array) { // ... }); |
3 Map()
3-1 介绍
集合中的键和值可以是任何类型。如果使用现有密钥向集合添加值,则新值会替换旧值。
1 | var mp = new Map(); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | clear 从映射中移除所有元素。 delete 从映射中移除指定的元素。 forEach:mapObject.forEach( function (value,key,mapObject){}[, thisArg]) 对映射中的每个元素执行指定操作。 get 返回映射中的指定元素。 has 如果映射包含指定元素,则返回 true 。 set 添加一个新建元素到映射。 toString 返回映射的字符串表示形式。 valueOf 返回指定对象的原始值。 |
3-2 使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | var users = new Map(); users.set( "johnny" ,{name: 'johnny' ,age:23,sex: 'M' }); users.set( "jane" ,{name: 'jane' ,age:21,sex: 'F' }); users.set( "mary" ,{name: 'mary' ,age:24,sex: 'F' }); //1.mapObject.forEach users.forEach( function (key,users){ console.log(key); }); //2.mapObject的values如何遍历 var iter = users.values(); var values = new Array(); var item = null ; while ((item=iter.next()).done!= true ){ //还未遍历完 values.push(item.value); item= null ; } values.forEach( function (val,idx,array){ console.log( "[" +idx+ "] " +JSON.stringify(array[idx])); }); |
4 兼容性
IE8+
5 补充: arrayObject.forEach
1 2 3 4 5 | arrayObject.forEach( function (element, index, array){ //TODO } ); |
X 推荐文献
[1] Js中的Map对象
[2] 修改IE不兼容MAP()的问题,自定义实现JavaScript的Map对象
[3] Map - Mozilla

本文作者:
千千寰宇
本文链接: https://www.cnblogs.com/johnnyzen/p/10675616.html
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!
本文链接: https://www.cnblogs.com/johnnyzen/p/10675616.html
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)