Skip to content

Commit de885da

Browse files
committed
Add DOMException cause
1 parent d720ef3 commit de885da

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

index.bs

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14559,10 +14559,16 @@ The {{DOMException}} type is an [=interface type=] defined by the following IDL
1455914559
fragment:
1456014560

1456114561
<pre class="idl">
14562+
14563+
dictionary DOMExceptionOptions {
14564+
any cause;
14565+
DOMString name;
14566+
};
14567+
1456214568
[Exposed=(Window,Worker),
1456314569
Serializable]
1456414570
interface DOMException { // but see below note about ECMAScript binding
14565-
constructor(optional DOMString message = "", optional DOMString name = "Error");
14571+
constructor(optional DOMString message = "", optional (DOMString or DOMExceptionOptions) nameOrOptions = "Error");
1456614572
readonly attribute DOMString name;
1456714573
readonly attribute DOMString message;
1456814574
readonly attribute unsigned short code;
@@ -14598,15 +14604,25 @@ interface DOMException { // but see below note about ECMAScript binding
1459814604
Note: as discussed in [[#es-DOMException-specialness]], the ECMAScript binding imposes additional
1459914605
requirements beyond the normal ones for [=interface types=].
1460014606

14601-
Each {{DOMException}} object has an associated <dfn for="DOMException">name</dfn> and
14602-
<dfn for="DOMException">message</dfn>, both [=strings=].
14607+
Each {{DOMException}} object has associated fields:
14608+
14609+
* its <dfn for="DOMException">name</dfn>, which is [=strings=],
14610+
* its <dfn for="DOMException">message</dfn>, which is [=strings=],
1460314611

1460414612
The
14605-
<dfn constructor for="DOMException" lt="DOMException(message, name)"><code>new DOMException(|message|, |name|)</code></dfn>
14613+
<dfn constructor for="DOMException" lt="DOMException(message, nameOrOptions)">
14614+
<code>new DOMException(|message|, |nameOrOptions|)</code>
14615+
</dfn>
1460614616
constructor steps are:
1460714617

14608-
1. Set [=this=]'s [=DOMException/name=] to |name|.
14609-
1. Set [=this=]'s [=DOMException/message=] to |message|.
14618+
1. Set [=this=]'s [=DOMException/message=] to |message|.
14619+
1. If |nameOrOptions| is a string, set [=this=]'s [=DOMException/name=] to
14620+
|nameOrOptions|.
14621+
1. Else,
14622+
1. If |nameOrOptions|'name is present, set [=this=]'s [=DOMException/name=]
14623+
to |nameOrOptions|'s name, else set [=this=]'s [=DOMException/name=]
14624+
to "Error".
14625+
1. Perform [=?=] <a abstract-op>InstallErrorCause</a>([=this=], |nameOrOptions|).
1461014626

1461114627
The <dfn attribute for="DOMException"><code>name</code></dfn> getter steps are to return
1461214628
[=this=]'s [=DOMException/name=].

0 commit comments

Comments
 (0)