Map.prototype.set()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Map 实例的 set() 方法会向 Map 对象添加或更新一个指定的键值对。

尝试一下

const map1 = new Map();
map1.set("bar", "foo");

console.log(map1.get("bar"));
// Expected output: "foo"

console.log(map1.get("baz"));
// Expected output: undefined

语法

js
set(key, value)

参数

key

要添加到 Map 对象的元素的键。该值可以是任何 JavaScript 类型(任何原始值或任何类型的 JavaScript 对象)。

value

要添加到 Map 对象的元素的值。该值可以是任何 JavaScript 类型(任何原始值或任何类型的 JavaScript 对象)。

返回值

Map 对象。

示例

使用 set()

js
const myMap = new Map();

// 将一个新元素添加到 Map 对象
myMap.set("bar", "foo");
myMap.set(1, "foobar");

// 在 Map 对象中更新某个元素的值
myMap.set("bar", "baz");

链式使用 set()

因为 set() 方法返回 Map 对象本身,所以你可以像下面这样链式调用它:

js
// 链式添加元素
myMap.set("bar", "foo").set(1, "foobar").set(2, "baz");

规范

Specification
ECMAScript® 2025 Language Specification
# sec-map.prototype.set

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
set

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

参见