js中map属性
JavaScript中的Map对象保存键值对,并且能够记住键的原始插入顺序
以下是关于如何在JavaScript中使用Map对象的博客文章概要:
一、创建和初始化Map对象
使用new Map()构造函数可以创建一个新的Map对象。你还可以在构造函数中传入一个可迭代对象(如键值对数组)来初始化Map对象。
const map1 = new Map(); // 创建一个空的Map对象const map2 = new Map([['key1', 'value1'],['key2', 'value2'],['key3', 'value3']
]); // 使用键值对数组初始化Map对象
二、添加和获取键值对
使用set()方法向Map对象中添加键值对,使用get()方法根据键获取对应的值。
map1.set('key1', 'value1');
map1.set('key2', 'value2');console.log(map1.get('key1')); // 输出:'value1'
console.log(map1.get('key2')); // 输出:'value2'
三、检查键是否存在
使用has()方法检查Map对象中是否存在指定的键。
console.log(map1.has('key1')); // 输出:true
console.log(map1.has('key3')); // 输出:false
四、删除键值对
使用delete()方法从Map对象中删除指定的键及其对应的值。
map1.delete('key1');
console.log(map1.has('key1')); // 输出:false
五、遍历Map对象
Map对象支持使用forEach()方法或for...of循环进行遍历。
// 使用forEach()方法遍历
map1.forEach((value, key) => {console.log(`${key}: ${value}`);
});// 使用for...of循环遍历
for (const [key, value] of map1) {console.log(`${key}: ${value}`);
}
六、Map对象与其他数据结构的比较
Map对象与Object和WeakMap等其他数据结构在存储键值对时有一些不同之处。例如,Map对象能够记住键的插入顺序,而Object的属性顺序在不同的JavaScript引擎中可能会有差异。另外,WeakMap只接受对象作为键,这使得它在某些特定场景下比Map对象更加适用。
七、总结
Map对象在JavaScript中提供了一种灵活且高效的键值对存储方式。它具有许多实用的方法,如set()、get()、has()和delete()等,使得操作和管理键值对变得更加简单。此外,Map对象还能够记住键的插入顺序,这在某些应用场景下是非常有用的。
相关文章:
js中map属性
JavaScript中的Map对象保存键值对,并且能够记住键的原始插入顺序 以下是关于如何在JavaScript中使用Map对象的博客文章概要: 一、创建和初始化Map对象 使用new Map()构造函数可以创建一个新的Map对象。你还可以在构造函数中传入一个可迭代对象&#x…...
CS224W—03 GNN
CS224W—03 GNN 回顾 快速回顾一下上一讲的内容。我们学到的关键概念是节点嵌入(Node Embedding)。我们的直觉是将网络中的节点编码到低维向量空间中。我们希望学习一个接受输入图的函数 f f f,并将其嵌入到低维节点嵌入空间中。在这里&am…...
库存超卖问题解决方式
文章目录 超卖问题解决方式什么是库存超卖问题?乐观锁和悲观锁的定义超卖问题解决方式一、悲观锁1.jvm单机锁2.通过使用mysql的行锁,使用一个sql解决并发访问问题3.使用mysql的悲观锁解决4. 使用redis分布式锁来解决 二、乐观锁解决1.版本号2. CAS法&…...
30岁决心转行,AI太香了
今天是一篇老学员的经历分享,此时的王同学在大洋彼岸即将毕业,手握多家北美大厂offer,一片明媚。谁能想到王同学的转码之路竟始于一场裁员,这场访谈拉开了他的回忆。 最近总刷到一些关于转行的话题,很多刚毕业的同学喜…...
C#知识|文件与目录操作:目录的操作
哈喽,你好啊,我是雷工! 前边学习了文件的删除、复制、移动,接下来学习目录的操作。 以下为学习笔记。 01 效果演示 1.1、显示指定目录下的所有文件 在左侧的文本框中显示出F:\F004-C#目录下的所有文件, 演示效果: 1.2、显示指定目录下的所有子文件 在左侧的文本框中显…...
从零到一:用Go语言构建你的第一个Web服务
使用Go语言从零开始搭建一个Web服务,包括环境搭建、路由处理、中间件使用、JSON和表单数据处理等关键步骤,提供丰富的代码示例。 关注TechLead,复旦博士,分享云服务领域全维度开发技术。拥有10年互联网服务架构、AI产品研发经验、…...
塔子哥的环游之旅-腾讯2023笔试(codefun2000)
题目链接 塔子哥的环游之旅-腾讯2023笔试(codefun2000) 题目内容 塔子哥是一位热衷旅游的程序员。他所在的国家共有 n 个城市,编号从 1 到 n。这些城市之间有 m 条双向的交通线路,分别为飞机线路和火车线路。塔子哥起始位于编号为 1 的城市,他计划前往编号为 n 的城市进行旅游…...
力扣SQL50 换座位
Problem: 626. 换座位 👨🏫 参考题解 Code SELECT(CASEWHEN MOD(id, 2) ! 0 AND counts ! id THEN id 1WHEN MOD(id, 2) ! 0 AND counts id THEN idELSE id - 1END) AS id,student FROMseat,(SELECTCOUNT(*) AS countsFROMseat) AS seat_counts O…...
SOPHGO算能科技BM1684芯片修改内存布局
目录 1 问题由来 2 下载memory_edit工具 3 查看当前内存配置 3 修改内存布局 4 替换生效 参考文献: 1 问题由来 我在算能SE5盒子上开发的时候,明显感觉很慢,然后看了下cpu内存竟然只有2.6G 但是这个盒子出厂默认是12G的,于…...
CUDA实现矩阵乘法的性能优化策略
本人主要参考了https://zhuanlan.zhihu.com/p/435908830,https://zhuanlan.zhihu.com/p/410278370,https://zhuanlan.zhihu.com/p/518857175 ,下面的代码均是本人实现 矩阵乘法的easy实现-V1 C = A B , A ∈ R M K , B ∈ R K...
element ui 修改table筛选按钮为自定义按钮
element ui 修改table筛选按钮为自定义按钮 前些时间做项目的时候,有个需求是,嫌elementui 自定的筛选按钮 下拉的小三角不好看,需要自定义按钮。 具体的实现方法如下: 从阿里的图片库引入自己想要的图标。在需要修改按钮的vue页…...
面向对象编程:一切皆对象
面向对象(OOP)是一种编程范式,它使用对象来设计软件。对象可以包含数据和代码:数据代表对象的状态,而代码代表操作数据的方式。在面向对象编程中,一切皆对象,这意味着将现实世界事务使用类与实例来模拟,如灯࿰…...
GIT版本管理与分支控制
目录 1、了解Git功能 2、第一次使用Git(首次配置好,后续不用再操作) 打开git后端 设置用户签名 结果 3、初始项目架构 创建本地新仓库并初始化 文件添加到本地仓库 a.文件添加缓存区 b.缓存区内容提交到本地仓库 c.改写提交的注释 …...
大模型算法备案流程最详细说明【流程+附件】
文章目录 一、语料安全评估 二、黑盒测试 三、模型安全措施评估 四、性能评估 五、性能评估 六、安全性评估 七、可解释性评估 八、法律和合规性评估 九、应急管理措施 十、材料准备 十一、【线下流程】大模型备案线下详细步骤说明 十二、【线上流程】算法备案填报…...
JAVA GUI 基本使用
package com.lu.gui;import javax.swing.*; import java.awt.*;public class MyJFrame extends JFrame {public MyJFrame() {this.setBackground(Color.BLACK);this.setResizable(false);this.setSize(500,500);this.setTitle("登录页面");} }package com.lu.gui;imp…...
【涵子来信】——AI革新:1.新时代是便捷的,要会用
各位读者朋友们: 我们现在AI时代的十字路口,AI是为生活带来便利的,我们要会使用AI。今天这篇文章来讲述一下AI的正确使用。 一、 AI的使用 1.1.便捷之中要会辨别 AI是带来强大的,利用好可以给生活带来便捷。 像之前WWDC24宣传…...
自定义线程池实现(一)
预期目标 1.实现一个相对完备的线程池 2.自定义拒绝策略(下一节) 线程池的基本参数 1.核心线程数 2.超时时间 3.拒绝策略(在下一篇中添加) 4.工作队列 5.任务队列 工作机制 当添加一个任务到线程池中时,线程池会…...
计算机毕业设计选题推荐-零食批发商仓库管理系统-Java/Python项目实战
✨作者主页:IT研究室✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…...
基于springboot+vue+uniapp的校园快递平台小程序
开发语言:Java框架:springbootuniappJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包&#…...
这两个大龄程序员,打算搞垮一个世界软件巨头!
大家都知道,Adobe是多媒体和数字内容创作者的绝对王者,它的旗下有众多大家耳熟能详的软件:Photoshop、Illustrator、Premiere Pro、After Effects、InDegign、Acrobat、Animate等等。 这些软件使用门槛很高,价格昂贵,安…...
纯本地运行!LiuJuan Z-Image Generator隐私安全,生成高质量图片
纯本地运行!LiuJuan Z-Image Generator隐私安全,生成高质量图片 想找一个既保护隐私,又能稳定生成高质量图片的AI工具吗?今天介绍的LiuJuan Z-Image Generator,可能就是你的理想选择。它最大的特点,就是“…...
Reachability.swift终极指南:现代iOS应用网络状态管理完全解析
Reachability.swift终极指南:现代iOS应用网络状态管理完全解析 【免费下载链接】Reachability.swift Replacement for Apples Reachability re-written in Swift with closures 项目地址: https://gitcode.com/gh_mirrors/re/Reachability.swift Reachabilit…...
OpenClaw备份方案:GLM-4.7-Flash模型切换与技能迁移指南
OpenClaw备份方案:GLM-4.7-Flash模型切换与技能迁移指南 1. 为什么需要备份方案? 上周我正准备将OpenClaw的默认模型从Qwen切换到新部署的GLM-4.7-Flash时,突然意识到一个严重问题——如果新模型不兼容现有技能怎么办?这个念头让…...
告别字符串截取!用正则表达式re模块精准提取HTML表格数据的避坑指南
告别字符串截取!用正则表达式re模块精准提取HTML表格数据的避坑指南 在数据抓取的世界里,HTML解析就像一场永无止境的猫鼠游戏。每当开发者费尽心思用字符串截取搞定一个网站,前端工程师稍微调整下标签结构,整个爬虫就崩溃了。这种…...
告别格式困扰:WebPShop插件全场景应用方案
告别格式困扰:WebPShop插件全场景应用方案 【免费下载链接】WebPShop Photoshop plug-in for opening and saving WebP images 项目地址: https://gitcode.com/gh_mirrors/we/WebPShop 在数字设计与开发领域,WebP格式以其卓越的压缩效率成为优化图…...
VRChat玩家必看:用批处理脚本一键把缓存从C盘挪到E盘(附config.json手动修改方法)
VRChat玩家自救指南:彻底解决C盘缓存爆满的终极方案 每次打开VRChat看到C盘剩余空间像倒计时一样减少,是不是感觉血压都上来了?作为一款以用户生成内容为核心的游戏,VRChat会不断下载并缓存其他玩家创建的虚拟形象、世界场景等资源…...
51单片机红外避障循迹小车实战:从接线到代码调试全流程(附避坑指南)
51单片机红外避障循迹小车实战:从硬件搭建到算法优化全解析 在电子制作领域,红外避障循迹小车堪称"入门必修课"。这个看似简单的项目,实则融合了传感器技术、电机控制、逻辑编程等多个核心知识点。不同于市面上大多数教程只停留在基…...
革命性超分辨率突破:OptiScaler让任何显卡实现4K级画质与帧率双提升
革命性超分辨率突破:OptiScaler让任何显卡实现4K级画质与帧率双提升 【免费下载链接】OptiScaler DLSS replacement for AMD/Intel/Nvidia cards with multiple upscalers (XeSS/FSR2/DLSS) 项目地址: https://gitcode.com/GitHub_Trending/op/OptiScaler 在…...
translategemma-12b-it部署案例:基于Ollama的轻量级多模态翻译服务搭建
translategemma-12b-it部署案例:基于Ollama的轻量级多模态翻译服务搭建 想象一下,你正在处理一份满是英文的产品说明书,或者收到了一张包含外文菜单的图片。传统方法可能需要你手动打字、复制粘贴,或者使用多个工具来回切换。现在…...
如何快速掌握教学环境控制权:JiYuTrainer终极使用指南
如何快速掌握教学环境控制权:JiYuTrainer终极使用指南 【免费下载链接】JiYuTrainer 极域电子教室防控制软件, StudenMain.exe 破解 项目地址: https://gitcode.com/gh_mirrors/ji/JiYuTrainer 你是否曾经在计算机课堂上感到束手束脚?当老师开启全…...
