From 29e62a7ab1e09e2deb9c7eb996205b96dfd91fc2 Mon Sep 17 00:00:00 2001 From: Jason Ren <40999116+jasonren0403@users.noreply.github.com> Date: Thu, 19 Oct 2023 08:17:59 +0800 Subject: [PATCH] [zh-cn]: update DOMException constructor (#16628) --- .../api/domexception/domexception/index.md | 57 +++++++++++++++---- 1 file changed, 45 insertions(+), 12 deletions(-) diff --git a/files/zh-cn/web/api/domexception/domexception/index.md b/files/zh-cn/web/api/domexception/domexception/index.md index 08ebd8e70daa1c..118058b4e6da45 100644 --- a/files/zh-cn/web/api/domexception/domexception/index.md +++ b/files/zh-cn/web/api/domexception/domexception/index.md @@ -1,35 +1,64 @@ --- -title: DOMException() +title: DOMException():DOMException() 构造函数 slug: Web/API/DOMException/DOMException +l10n: + sourceCommit: 41a8b9c9832359d445d136b6d7a8a28737badc6b --- {{ APIRef("DOM") }} -**`DOMException()`** 构造函数返回一个包含指定的信息和名称的 `DOMException` 对象。 +**`DOMException()`** 构造函数返回一个包含指定消息和名称的 {{domxref("DOMException")}} 对象。 ## 语法 -``` -var domException = new DOMException(); -var domException = new DOMException(message); -var domException = new DOMException(message, name); +```js-nolint +new DOMException() +new DOMException(message) +new DOMException(message, name) ``` ### 参数 - `message` {{optional_inline}} - - : 对异常的描述。如果不存在,使用空字符串 `''` . + - : 对异常的描述。如果不存在,使用空字符串 `''`。 - `name` {{optional_inline}} - - : 返回一个 {{domxref("DOMString")}} 包含与 [error constant](/zh-CN/docs/Web/API/DOMException#Error_constants) 错误相关的字符串常数之一。 + - : 一个字符串。如果指定的名称是[标准的错误名称](/zh-CN/docs/Web/API/DOMException#错误名称)之一,那么获取 `DOMException` 对象的 [`code`](/zh-CN/docs/Web/API/DOMException/code) 属性将返回与指定名称对应的代码编号。 ### 返回值 -- **{{domxref("DOMException")}}** - - : 一个新创建的 {{domxref("DOMException")}} 对象。 +一个新创建的 {{domxref("DOMException")}} 对象。 + +## 示例 + +在本例中,按下按钮会导致抛出自定义的 `DOMException` 异常,然后会捕获该异常并在警报中显示自定义的错误信息。 + +### HTML + +```html + + +
+``` -## 例子 +### JavaScript -TBD +```js +const button = document.querySelector("button"); + +button.onclick = () => { + try { + throw new DOMException("已触发自定义 DOM 异常。"); + } catch (error) { + document.querySelector( + "#output", + ).textContent = `错误信息:${error.message}`; + } +}; +``` + +### 结果 + +{{ EmbedLiveSample('示例', '100%', 100) }} ## 规范 @@ -38,3 +67,7 @@ TBD ## 浏览器兼容性 {{Compat}} + +## 参见 + +- [`core-js`](https://github.com/zloirock/core-js) 中一个可用的 [`DOMException` 构造函数的 polyfill](https://github.com/zloirock/core-js#domexception)