站长资讯网
最全最丰富的资讯网站

javascript中有map对象吗

JavaScript中有map对象;map对象保存键值对,是键值对的集合,map对象存有键值对时,其中的键可以是任何数据类型,map对象记得键的原始插入顺序并且具有表示映射大小的属性,能够使用对象作为键是Map的一个重要特性。

javascript中有map对象吗

本教程操作环境:windows10系统、javascript1.8.5版、Dell G3电脑。

javascript中有map对象

Map 对象存有键值对,其中的键可以是任何数据类型。

Map 对象记得键的原始插入顺序。

Map 对象具有表示映射大小的属性。

Map 对标的是 Object,是一种类似于对象的键值对数据结构

  • 不同于Object 的是Map 的键可以为任意类型的值(null 会被当做 undefined),而不仅仅为字符串
  • Map 的键值是有序的,可通过 size 获取长度
  • Map 在频繁增删键值对的场景下会有一些性能优势
let map = new Map([     ["姓名", "张三"],     ["年龄","18"],     [null, null],     [undefined, null]])// 类似于:let obj = {     '姓名': '张三',     '年龄': 18,     'null': null,     'undefined': null}map.set(obj, 'new obj')console.log(...map)

javascript中有map对象吗

操作方法

方法/属性 描述
size 属性,获取当前Map对象的长度,同数组的 length
set(key,value) 向当前Map对象中添加一个值,返回的Map对象,支持链式写法
get(key) 通过key找到value(key为对象时,必须为同一对象的引用),如果找不到,返回undefined
delete(key) 删除当前Map对象中的一个值,返回一个布尔值,表示是否删除成功
has(key) 检测这个value是否是当前Map对象的一个元素,通过返回的布尔值表示
clear() 清除当前Map对象所有元素,没有返回值

Map 遍历方法

方法/属性 功能介绍
keys() 返回该Set对象键名的遍历器
values() 返回该Set对象键值的遍历器
entries() 返回该Set对象键值对的遍历器
forEach() 使用回调函数遍历该Set对象的每个元素,可以接受第二个参数,用来绑定this
for(let item of map.entries()) {     console.log(item[0], item[1])}// 等同于for(let [key, value] of map) {     console.log(key, value)}map.forEach((value, key, map)=> {     console.log(key, value)})

javascript中有map对象吗

赞(0)
分享到: 更多 (0)