diff --git a/files/zh-cn/web/javascript/reference/global_objects/weakmap/delete/index.md b/files/zh-cn/web/javascript/reference/global_objects/weakmap/delete/index.md index b27431d4ae676b..ba6db388c0c5a5 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/weakmap/delete/index.md +++ b/files/zh-cn/web/javascript/reference/global_objects/weakmap/delete/index.md @@ -3,7 +3,11 @@ title: WeakMap.prototype.delete() slug: Web/JavaScript/Reference/Global_Objects/WeakMap/delete --- -{{JSRef("Global_Objects", "WeakMap")}} +{{JSRef}} + +{{jsxref("WeakMap")}} 实例的 **`delete()`** 方法从该 `WeakMap` 中删除指定的元素。 + +{{EmbedInteractiveExample("pages/js/weakmap-prototype-delete.html")}} ## 概述 @@ -11,28 +15,30 @@ slug: Web/JavaScript/Reference/Global_Objects/WeakMap/delete ## 语法 -```plain -wm.delete(key); +```js-nolint +weakMapInstance.delete(key) ``` -### Parameters 参数 +### 参数 -- key - - : 需要删除的元素的键 +- `key` + - : 要从 `WeakMap` 对象中删除的元素的键。 ### 返回值 -如果成功删除,返回 `true`,否则返回 `false`。 +如果成功在 `WeakMap` 对象中删除了元素,则返回 `true`。如果未在 `WeakMap` 中找到该键,则返回 `false`。如果 `key` 不是对象或[非全局注册的符号](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol#全局共享的_symbol),则始终返回 `false`。 ## 示例 +### 使用 delete() 方法 + ```js -var wm = new WeakMap(); +const wm = new WeakMap(); wm.set(window, "foo"); -wm.delete(window); // 返回 true,表示删除成功。 +wm.delete(window); // 返回 true。成功删除。 -wm.has(window); // 返回 false,因为 window 对象已经被删除了。 +wm.has(window); // 返回 false。WeakMap 中已经不存在 window 对象。 ``` ## 规范 @@ -43,6 +49,6 @@ wm.has(window); // 返回 false,因为 window 对象已经被删除了。 {{Compat}} -## 相关链接 +## 参见 - {{jsxref("WeakMap")}} diff --git a/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.md b/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.md index c7d4217230a2fd..2dad1f470cba33 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.md +++ b/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.md @@ -5,33 +5,35 @@ slug: Web/JavaScript/Reference/Global_Objects/WeakMap/get {{JSRef}} -**`get()`** 方法返回 `WeakMap` 指定的元素。 +{{jsxref("WeakMap")}} 实例的 **`get()`** 方法返回该 `WeakMap` 中的指定元素。 + +{{EmbedInteractiveExample("pages/js/weakmap-prototype-get.html")}} ## 语法 -```plain -wm.get(key); +```js-nolint +get(key) ``` ### 参数 -- key - - : 必须。想要从 `WeakMap` 获取的元素的键。 +- `key` + - : 要从 `WeakMap` 对象返回的元素的键。 ### 返回值 -### 返回与指定键相关联的值,如果 `WeakMap` 对象找不到这个键则返回 `undefined`。 +该 `WeakMap` 对象中与指定键相关联的元素。如果找不到该键,则返回 {{jsxref("undefined")}}。如果 `key` 不是对象或[非全局注册的符号](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol#全局共享的_symbol),则始终返回 {{jsxref("undefined")}}。 ## 示例 -### 使用 `get` 方法 +### 使用 get() 方法 ```js -var wm = new WeakMap(); +const wm = new WeakMap(); wm.set(window, "foo"); -wm.get(window); // 返回 "foo". -wm.get("baz"); // 返回 undefined. +wm.get(window); // 返回 "foo"。 +wm.get("baz"); // 返回 undefined。 ``` ## 规范 @@ -42,7 +44,7 @@ wm.get("baz"); // 返回 undefined. {{Compat}} -## 相关链接 +## 参见 - {{jsxref("WeakMap")}} - {{jsxref("WeakMap.set()")}} diff --git a/files/zh-cn/web/javascript/reference/global_objects/weakmap/has/index.md b/files/zh-cn/web/javascript/reference/global_objects/weakmap/has/index.md index 385a0613027b60..2b9c362fdca9d9 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/weakmap/has/index.md +++ b/files/zh-cn/web/javascript/reference/global_objects/weakmap/has/index.md @@ -5,34 +5,35 @@ slug: Web/JavaScript/Reference/Global_Objects/WeakMap/has {{JSRef}} -**`has()`** 方法根据 WeakMap 对象的元素中是否存在 key 键返回一个 boolean 值。 +{{jsxref("WeakMap")}} 实例的 **`has()`** 返回一个布尔值,指示该 `WeakMap` 中是否存在具有指定键的元素。 + +{{EmbedInteractiveExample("pages/js/weakmap-prototype-has.html")}} ## 语法 -```plain -wm.has(key); +```js-nolint +has(key) ``` -### Parameters +### 参数 -- key - - : 必须的。用来检测 WeakMap 对象中是否存在元素的键为 key。 +- `key` + - : 要测试是否在该 `WeakMap` 对象中存在的元素的键。 -### Return value +### 返回值 -- Boolean - - : 如果指定的 key 存在于某个元素中则返回 true,否则返回 flase。 +如果指定键的元素存在于 `WeakMap` 对象中,则返回 `true`;否则返回 `false`。如果 `key` 不是对象或[非全局注册的符号](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol#全局共享的_symbol),则始终返回 `false`。 ## 示例 -### 使用 `has` 方法 +### 使用 has 方法 ```js -var wm = new WeakMap(); +const wm = new WeakMap(); wm.set(window, "foo"); -wm.has(window); // returns true -wm.has("baz"); // returns false +wm.has(window); // 返回 true +wm.has("baz"); // 返回 false ``` ## 规范 @@ -43,7 +44,7 @@ wm.has("baz"); // returns false {{Compat}} -## See also +## 参见 - {{jsxref("WeakMap")}} - {{jsxref("WeakMap.prototype.set()")}} diff --git a/files/zh-cn/web/javascript/reference/global_objects/weakmap/set/index.md b/files/zh-cn/web/javascript/reference/global_objects/weakmap/set/index.md index 3f49e4ecd1b48e..9cfc7bdc57d38e 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/weakmap/set/index.md +++ b/files/zh-cn/web/javascript/reference/global_objects/weakmap/set/index.md @@ -5,40 +5,50 @@ slug: Web/JavaScript/Reference/Global_Objects/WeakMap/set {{JSRef}} -**`set()`** 方法根据指定的 `key` 和 `value` 在 `WeakMap`对象中添加新/更新元素。 +{{jsxref("WeakMap")}} 实例的 **`set()`** 方法根据指定的键值在该 `WeakMap` 中添加新元素。 {{EmbedInteractiveExample("pages/js/weakmap-prototype-set.html")}} ## 语法 -```plain -wm.set(key, value); +```js-nolint +set(key, value) ``` ### 参数 -- key - - : 必须的。必须是`对象`。是要在`WeakMap` 对象中添加元素的 key 部分。 -- value - - : 必须的。任意的值。是要在`WeakMap` 对象中添加/元素的 value 部分。 +- `key` + - : 必须是对象或[非全局注册的符号](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol#全局共享的_symbol)。要添加到 `WeakMap` 对象的元素的键。 +- `value` + - : 任何要添加到 `WeakMap` 对象的元素的值。 ### 返回值 -该`WeakMap`对象 +该 `WeakMap` 对象 + +### 异常 + +- {{jsxref("TypeError")}} + - : 如果 `key` 不是一个对象或[非全局注册的符号](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol#全局共享的_symbol),则抛出该异常。 ## 示例 -### 使用 `set` 方法 +### 使用 set() 方法 ```js -var wm = new WeakMap(); -var obj = {}; +const wm = new WeakMap(); +const obj = {}; -// Add new elements to the WeakMap -wm.set(obj, "foo").set(window, "bar"); // chainable +// 将新元素添加到 WeakMap +wm.set(obj, "foo").set(window, "bar"); // 链式调用 -// Update an element in the WeakMap +// 更新 WeakMap 中的元素 wm.set(obj, "baz"); + +// 使用非全局注册的符号作为键 +const sym = Symbol("foo"); +wm.set(sym, "baz"); +wm.set(Symbol.iterator, "qux"); ``` ## 规范 @@ -49,7 +59,7 @@ wm.set(obj, "baz"); {{Compat}} -## See also +## 参见 - {{jsxref("WeakMap")}} - {{jsxref("WeakMap.prototype.get()")}}