Map竟然这么好用?分享 1 段优质 JS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿!

大家好,我是大澈!

本文约 600+ 字,整篇阅读约需 1 分钟。

今天分享一段优质 JS 代码片段,使用Map数据结构来管理表单数据。

老规矩,先阅读代码片段并思考,再看代码解析再思考,最后评论区留下你的见解!

js 复制代码
// 创建一个Map对象
const formMap = new Map();

formMap.set('username', 'xxx');
formMap.set('password', '123456');

const username = formMap.get('username');
const password = formMap.get('password');

console.log(username); // 'xxx'
console.log(password); // '123456'

if (formMap.has('username')) {
  console.log('Username exists in the map');
}

formMap.delete('password');
console.log(formMap.get('password')); // undefined

formMap.clear();
console.log(formMap.size); // 0

分享原因

这段代码展示了如何使用 Map 对象来存储和访问键值对。

相比于使用普通对象,Map 提供了一些优点:

键的类型: 在 Map 中,键可以是任何类型,包括对象、函数和基本数据类型,而在普通对象中,键只能是字符串或符号。

迭代顺序: Map 按插入顺序迭代键值对,而普通对象则没有保证迭代顺序。

内置方法: Map 提供了一些内置方法,如 set、get、has、delete 和 clear,使得操作更加便捷。

代码解析

1. formMap.set('username', 'xxx');

添加表单元素的值到Map中。

2. formMap.get('username');

获取表单元素的值。

3. formMap.has('username')

检查是否包含某个键。

4. formMap.delete('password');

删除某个键值对。

5. formMap.clear();

清空整个Map。

6. formMap.size

查看键值对的数量。

  • end -
相关推荐
拾年27538 分钟前
React Hooks 进阶篇:useMemo / useCallback / useReducer / useImperativeHandle,用「算账 +
前端·javascript·react.js
Jackson__1 小时前
面试官:如何在老项目中使用新框架,并实现通信?
前端·javascript·面试
拾年2751 小时前
React Hooks 保姆级教程:把组件想象成失忆的打工人,4 个 Hook 带你原地起飞
前端·javascript·react.js
默_笙1 小时前
😝 5 亿次循环卡死页面?我用 Web Worker 把它扔进后台线程,页面丝滑如初
前端·javascript
CAD老兵1 小时前
一行代码集成 DWG/DXF 图纸查看:测量批注,数据不出站
前端·javascript·github
小林ixn1 小时前
单例模式:从弹窗管理到全局状态,一个模式搞定
前端·javascript·设计模式
猫不易1 小时前
从 Virtual DOM 到 Vapor:Vue 3.6 的另一条路
前端·vue.js
名字还没想好☜1 小时前
React 用 useEffect 做轮询实战:setInterval 拿到旧 state 的闭包陷阱与正确清理
前端·javascript·react.js·react·useeffect
SendTomo3 小时前
P2P文件传输工具对比:SendTomo vs send.wang
javascript·网络协议·webrtc·html5·p2p
SendTomo5 小时前
WebRTC文件互传工具实测对比
javascript·网络·webrtc·html5·p2p