希赛考试网
首页 > 软考 > 软件设计师

js取map中的value

希赛网 2024-02-04 11:25:13

JavaScript是一种广泛使用的脚本语言,它在Web开发中具有重要的作用。在JavaScript中,Map是一种非常有用的数据类型,它允许我们将一种类型的值映射到另一种类型的值上。在本文中,我们将研究如何使用JavaScript从Map中获取值。

一、Map介绍

Map是ES6中的新数据类型之一,它允许我们使用任何JavaScript值作为键或值。 Map对象是一个简单的键/值映射。任何值(对象和原始值)都可以作为一个键或一个值。

在Map对象中,每个值都有唯一的键,每个键都有唯一的值,Map对象中的键值对可以按照其插入顺序而访问。这意味着Map对象可以很好地保留插入顺序,并且在无序操作时,不会影响其它项。

二、如何取Map中的Value

在JavaScript中,我们通过Map实例的get()方法来获取Map中指定key对应的value值。例如:

```

let map = new Map([

['name', '张三'],

['age', 20]

])

console.log(map.get('name')) // 输出:张三

console.log(map.get('age')) // 输出:20

```

这是一个非常简单的例子,我们定义了一个新的Map实例,并使用get()方法以键 "name" 和 "age" 来获取相应的值。

三、其他方法获取Map中的Value

除了使用get()方法,还有其他几种方法可以获取Map中的value值:

1. values()方法

values()方法返回所有Map实例中的value值,返回结果是一个迭代器对象,可以使用for...of循环进行遍历输出,例如:

```

let map = new Map([

['name', '张三'],

['age', 20]

])

let values = map.values()

for (let value of values) {

console.log(value) // 输出:张三、20

}

```

2. entries()方法

entries方法返回一个迭代器对象,它包含Map中每一项的[key, value]数组,可以通过解构[键名, 值]的方式访问键值对,例如:

```

let map = new Map([

['name', '张三'],

['age', 20]

])

let entries = map.entries()

for (let [key, value] of entries) {

console.log(`${key}: ${value}`) // 输出:name: 张三、age: 20

}

```

3. forEach()方法

forEach()方法支持回调函数,该函数可以通过参数形式传递,可以通过forEach()方法遍历Map实例,例如:

```

let map = new Map([

['name', '张三'],

['age', 20]

])

map.forEach(function(value, key, map) {

console.log(`${key}: ${value}`)

})

// 输出:name: 张三、age: 20

```

四、一些注意事项

1. 在JavaScript中,Map对象中的每个键都是唯一的,如果多次使用相同的键来添加项,则覆盖已经存在的值。

2. Map实例对象不是Array实例,不能直接使用索引访问。如果尝试使用索引访问,会得到undefined结果。

3. 如果新Map实例需要继承自已存在的Map对象,则可以使用拓展运算符来完成,例如:

```

const original = new Map([

[1, 'a'],

[2, 'b']

])

const extended = new Map([

...original,

[3, 'c']

])

console.log(extended.get(1)) // 输出:a

console.log(extended.get(2)) // 输出:b

console.log(extended.get(3)) // 输出:c

```

微信扫一扫,领取最新备考资料


软考.png


软件设计师 资料下载
备考资料包大放送!涵盖报考指南、考情深度解析、知识点全面梳理、思维导图等,免费领取,助你备考无忧!
立即下载
软件设计师 历年真题
汇聚经典真题,展现考试脉络。精准覆盖考点,助您深入备考。细致解析,助您查漏补缺。
立即做题

软考报考咨询

微信扫一扫,定制学习计划