[JavaScript] Map类型在JavaScript中的使用

news/2024/9/15 22:45:29/

感受Map键值对

  • 花样很多
let map = new Map()
map.set('name', 'dust')
map.set(function () {}, 'hello')
map.set({}, 'hi')
map.set(1, 'www.baidu.com')
console.log(map)

运行结果:
在这里插入图片描述

  • 也可以一次性添加多个值
let map2 = new Map([['name', 'dust'],[function () {}, 'hello'],
])
console.log(map2)

运行结果:
在这里插入图片描述


Map里的增删改查

  • 查找某一项
  • 注意这里是引用对象,在某些情况下是查不出来的。
console.log(map.get('number'))

在这里插入图片描述

  • 判断是否有map.has()
console.log(map.has('number')) //true
  • 清空
map.clear()console.log(map) //Map(0) {}

在这里插入图片描述


Map遍历的几种方式

  1. 遍历keys:map.keys()
for (const key of map.keys()) {console.log(key)
}

在这里插入图片描述

  1. 遍历values:map.values()
for (const value of map.values()) {console.log(value)
}

在这里插入图片描述

  1. 遍历全部内容
for (const [key, value] of map.entries()) {console.log(key, value)
}

在这里插入图片描述

  1. forEach遍历
  • 注意这里和上面的是反过来的,这里是(value, key)
map.forEach((value, key) => {console.log(value, key)
})

在这里插入图片描述


Map的展开

  • 可以用于类型转换
let map = new Map([['name', 'dust'],[function () {}, 'hello'],[{}, 'hi'],['number', 99],
])
console.log(...map.entries())

运行结果:

[ 'name', 'dust' ] [ [Function (anonymous)], 'hello' ] [ {}, 'hi' ] [ 'number', 99 ]

执行以下代码:

let a = [...map]
console.log(a)

运行结果:
在这里插入图片描述
此时你就可以类型转换了。


http://www.ppmy.cn/news/607469.html

相关文章

服务器显示内存已超标,服务器显示内存已超标

服务器显示内存已超标 内容精选换一换在“资源使用详情”区域内,内存分配率统计了当前系统的真实情况,包括部分系统管理内存。各项指标的计算方法如下。总量:可用内存容量,指所有DeC物理服务器上的物理内存容量总和。内存总量数值…

大数据必学Java基础(三十一):IDEA模板的使用

文章目录 IDEA模板的使用 一、代码模板是什么 1、所处位置 2、区别

IP子网划分:网络的秘密通道解密

IP子网划分:揭秘网络中的秘密通道 引言 在现代互联网中,IP子网划分是一项关键的网络管理技术。它允许我们将一个大的IP地址空间划分为多个较小的子网,以提高网络的灵活性和管理效率。通过合理划分IP地址空间、计算子网掩码和使用CIDR表示法…

云服务器dns配置文件,linux服务器dns配置文件

linux服务器dns配置文件 内容精选换一换裸金属服务器硬件损坏,SDI卡损坏等原因,导致裸金属服务器无法正常使用时,您可以申请裸金属服务器重建功能。裸金属服务器重建过程不是自动化的,您需要联系管理员来完成操作。仅快速发放型裸…

大数据必学Java基础(三十二):IDEA中的断点调试

文章目录 IDEA中的断点调试 一、常用断点调试快捷键 二、条件判断,查看表达式的值 IDEA中的断点调试

关于正则表达式 \1 \2之类的问题

我们创建一个正则表达式 var RegExp /^(123)(456)\2\1$/; 这个正则表达式匹配到的字符串就是 123456456123 创建另外第二正则表达式 var RegExp1 /^(123)(456)\1$/; 这个正则表达式匹配到的字符串是 123456123 创建另外第三正则表达式 var RegExp1 /^(123)(456)\2$/; 这个正…

[JavaScript] 函数作用域问题

理解以下代码: function foo() {let n 1return function bar() {let m 1function show() {console.log(m:, m)console.log(n:, n)}show()} } let a foo() console.log(a) a() a()首先看看这个a是个什么? 是返回回来的一个函数——a是一个函数 那么n…

数据湖(十九):SQL API 读取Kafka数据实时写入Iceberg表

文章目录 SQL API 读取Kafka数据实时写入Iceberg表 一、首先需要创建对应的Iceberg表

Pytorch系列教程-使用Seq2Seq网络和注意力机制进行机器翻译

NLP FROM SCRATCH: TRANSLATION WITH A SEQUENCE TO SEQUENCE NETWORK AND ATTENTION Author: Sean Robertson This is the third and final tutorial on doing “NLP From Scratch”, where we write our own classes and functions to preprocess the data to do our NLP mod…

[JS][C++]两题斐波那契数列:上台阶、triangle

上台阶 时间限制: 3000MS 内存限制: 589824KB 题目描述: 有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第m级,共有多少走法? 注:规定从一级到一级…

大数据必学Java基础(三十三):面向对象介绍

文章目录 面向对象介绍 一、面向过程和面向对象的区别 二、类和对象的关系

解决MySQL打开或创建连接慢的问题

Navicat打开数据库连接非常慢 配置一下 skip-name-resolve 在配置文件中,即可把打开速度提升数倍。主要功能是跳过DNS域名解析。 MySQL 中的 skip-name-resolve 是一个配置参数,用于关闭 MySQL 对客户端连接的 DNS 解析功能。默认情况下,MyS…

黑芝麻智能技术

黑芝麻智能技术 参考链接: https://bst.ai/chip.html

云原生(三十五) | Prometheus入门和安装

文章目录 Prometheus入门和安装 一、入门 1、docker版本 二、安装 1、charts下载

负对数似然(negative log-likelihood)

negative log likelihood文章目录negative log likelihood似然函数(likelihood function)OverviewDefinition离散型概率分布(Discrete probability distributions)连续型概率分布(Continuous probability distributions)最大似然估计(Maximum Likelihood Estimation,MLE)对数似…

云端智能芯片GPGPU与编译器

云端智能芯片GPGPU与编译器 上海天数智芯半导体有限公司(简称“天数智芯”)于 2018 年正式启动 7 纳米通用并行(GPGPU)云端计算芯片设计,是中国第一家 GPGPU 云端芯片及超级算力系统提供商。 公司以“成为智能社会的赋…

[JavaScript] 探索JS中的函数秘密

函数长啥样? 把一些要重复使用的内容封装到函数内。 function foo(title) {console.log(title) } foo(title) foo(dust) foo(hello)运行结果: 用对象把函数装起来 let user {name: null,setUsername: function (name) {this.name name},getUserna…

数据湖(二十):Flink兼容Iceberg目前不足和Iceberg与Hudi对比

文章目录 Flink兼容Iceberg目前不足和Iceberg与Hudi对比 一、Flink兼容Iceberg目前不足 二、Iceberg与Hudi对比 Flink兼容Iceberg目前不足和Iceberg与Hudi对比

MLIR中间表示与编译

MLIR中间表示与编译 概述 目前深度模型的推理引擎按照实现方式大体分为两类: 解释型推理引擎:  一般包含模型解析器,模型解释器,模型优化器。  模型解析器负责读取和解析模型文件,转换为适用于解释器处理的内存格…

客快物流大数据项目(六十九):即席查询的背景介绍和业务处理流程

文章目录 即席查询的背景介绍和业务处理流程 一、​​​​​​​背景介绍