此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

EventTarget()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2020年9月⁩.

EventTarget() 构造方法将会创建一个新的 EventTarget 对象实例。

备注: 需要显式调用这一构造函数的情况极为少见。在大多数情况下,这一函数是在继承了 EventTarget 类的构造函数中被 super 所调用的。

语法

js
new EventTarget();

参数

无。

返回值

一个 EventTarget 实例。

示例

js
class MyEventTarget extends EventTarget {
  constructor(mySecret) {
    super();
    this._secret = mySecret;
  }

  get secret() {
    return this._secret;
  }
}

let myEventTarget = new MyEventTarget(5);
let value = myEventTarget.secret; // === 5
myEventTarget.addEventListener("foo", (e) => {
  myEventTarget._secret = e.detail;
});

let event = new CustomEvent("foo", { detail: 7 });
myEventTarget.dispatchEvent(event);
let newValue = myEventTarget.secret; // === 7

规范

Specification
DOM
# ref-for-dom-eventtarget-eventtarget①

浏览器兼容性

参见