JavaScript -- Map对象及常用方法介绍

这篇具有很好参考价值的文章主要介绍了JavaScript -- Map对象及常用方法介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Map

1 Map介绍

  • Map用来存储键值对结构的数据**(key-value)**
  • Object中存储的数据就可以认为是一种键值对结构
  • Map和Object的主要区别:
    • Object中的属性名只能是字符串或符号,如果传递了一个其他类型的属性名,JS解释器会自动将其转换为字符串
    • Map中任何类型的值都可以成为数据的key
const obj = {
    "name":"孙悟空",
    'age':18,
    [Symbol()]:"哈哈",
    [obj2]:"嘻嘻"
}

JavaScript -- Map对象及常用方法介绍

2 创建一个Map

const map = new Map()

map.set("name", "孙悟空")
map.set(obj2, "呵呵")
map.set(NaN, "哈哈哈")

map.delete(NaN)
// map.clear()

console.log(map)
console.log(map.get("name"))
console.log(map.has("name"))

JavaScript -- Map对象及常用方法介绍

3 常用方法介绍

  • map.size() 获取map中键值对的数量
  • map.set(key, value) 向map中添加键值对
  • map.get(key) 根据key获取值
  • map.delete(key) 删除指定数据
  • map.has(key) 检查map中是否包含指定键
  • map.clear() 删除全部的键值对
  • map.keys() 获取map的所有的key
  • map.values() 获取map的所有的value

4 将Map转换为数组

方法一:使用方法Array.from(map)

const map = new Map()

map.set("name", "孙悟空")
map.set("age", 18)
map.set({}, "呵呵")

// 将map转换为数组
const arr = Array.from(map) // [["name","孙悟空"],["age",18]]
const arr = [...map]

console.log(arr)

JavaScript -- Map对象及常用方法介绍

方法二:使用解构符

推荐这种方法,写法更简便

const map = new Map()

map.set("name", "孙悟空")
map.set("age", 18)
map.set({}, "呵呵")

// 将map转换为数组
const arr = [...map]

console.log(arr)

JavaScript -- Map对象及常用方法介绍

5 从数组构建Map

const map2 = new Map([
    ["name", "猪八戒"],
    ["age", 18],
    [{}, () => {}],
])
console.log(map2)

JavaScript -- Map对象及常用方法介绍

6 遍历Map

方法一:使用for-of

const map = new Map()

map.set("name", "孙悟空")
map.set("age", 18)
map.set({}, "呵呵")

for (const [key, value] of map) {
    // const [key, value] = entry
    console.log(key, value)
}

方法二:使用forEach文章来源地址https://www.toymoban.com/news/detail-495697.html

const map = new Map()

map.set("name", "孙悟空")
map.set("age", 18)
map.set({}, "呵呵")

map.forEach((key, value)=>{
    console.log(key, value)
})

到了这里,关于JavaScript -- Map对象及常用方法介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JavaScript中的map()和forEach()方法有什么区别?

    聚沙成塔·每天进步一点点 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而

    2024年02月06日
    浏览(48)
  • JavaScript中手动实现Array.prototype.map方法

    在前端开发中,我们经常需要对数组进行操作和处理。在JavaScript中,数组是常用的数据类型之一。而数组的map方法可以将一个数组中的每个元素都进行某种操作,并返回一个新的数组。今天,我们就来手动实现JavaScript中数组原型的map方法。 首先,让我们回顾一下map方法的基

    2024年02月21日
    浏览(41)
  • 细说JavaScript BOM之window常用子对象

    一、location location翻译过来就是位置的意思,打开浏览器窗口大家可以看到导航栏上有一个URL地址。 location常用对象属性 属性 描述 search 设置或返回从问好(?)开始的URL hash 设置或返回从#后面开始的URL protocol 设置或返回当前URL的协议 host 设置或返回主机名和当前URL的端口号

    2024年01月19日
    浏览(46)
  • Hive之Map常用方法

    实际工作中,有时会出现map复杂数据类型,字段field1形式如:{‘k0’:‘abc’,‘k1’:‘01,02,03’,‘k2’:‘456’},如果是string形式,我们可以适用get_json_object 函数,取出对应的value值,具体如:get_json_object(field,‘$.k0’),即可取出值abc,如果是map数据类型,这个值该怎么取呢

    2023年04月24日
    浏览(27)
  • 5 map、结构体、方法、面向对象【Go语言教程】

    1.1 概念及声明 ①概念 基本语法:var map 变量名 map[keytype]valuetype key 可以是什么类型? golang 中的 map,的 key 可以是很多种类型,比如 bool, 数字,string, 指针, channel , 还可以是只包含前面几个类型的 接口, 结构体, 数组 通常 key 为 int 、string 注意: slice, map 还有 function 不可以,

    2024年02月02日
    浏览(52)
  • 【Java】Map集合中常用方法

    Map集合的常用方法 方法名称 作用 V put(Key k,V value) 添加元素 V remove(K key, V value) 根据键值删除对应的值 void clear() 清除所有键值元素 boolean containsKey(Object key) 判断集合中是否包含指定的键 boolean containsValue(Object value) 判断集合中是否包含指定的值 boolean isEmpty() 判断集合是否为空

    2024年02月08日
    浏览(40)
  • java中几种对象存储(文件存储)中间件的介绍

    一、前言 在博主得到系统中使用的对象存储主要有OSS(阿里云的对象存储) COS(腾讯云的对象存储)OBS(华为云的对象存储)还有就是MinIO 这些玩意。其实这种东西大差不差,几乎实现方式都是一样,存储模式大同小异。下面介绍几种存储模式在springBoot中的使用。 二、阿里

    2024年03月15日
    浏览(47)
  • 常用分布式文件系统(对象存储)对比-SeaweedFS、Minio

    常用分布式文件系统,相对比较热门的有Minio,SeaweedFS,FastDFS,ceph。主要对比一下Minio,SeaweedFS。 什么是SeaweedFS? SeaweedFS是一种简单的、高度可扩展的分布式文件系统。SeaweedFS是一个非常优秀的由 Go语言开发的分布式存储开源项目。它是用来存储文件的系统,并且与使用的语言无

    2024年02月03日
    浏览(55)
  • 常用的map转bean互转方法

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 这个很常用,还支持将蛇形转成驼,如:apply_time 会赋值到applyTime上 这个也很常用,也支持将蛇型转成驼峰, 如: apply_time 会赋值到 applyTime 上 嵌套型map,转换会有问题,且 不支持蛇型转成驼峰 这个也

    2024年02月16日
    浏览(31)
  • Flutter中Map、List数组的常用方法

    Dart语言是Flutter开发的必备语言,官方地址如下:Dart:https://dart.cn/ 使用dart工具来运行这些常用的方法,工具:https://dartpad.cn 在Dart中,Map用来存储对像类型的数据,List与Set用来存储数组类型的数据。 Map的创建实例如下: 创建有一个有初始值的Map,代码如下: 根据List数据来

    2024年02月08日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包