WeakRef.prototype.deref()

deref メソッドは WeakRef インスタンスのターゲットオブジェクトを返します。そのオブジェクトが既にガベージコレクションされている場合は undefined を返します。

構文

js
deref()

引数

なし。

返値

WeakRef の参照先となるターゲット値で、オブジェクトまたは未登録のシンボルでなければなりません。そのオブジェクトが既にガベージコレクションされている場合は undefined です。

解説

重要な注意事項については WeakRef ページの WeakRef の注意事項の節を参照してください。

deref の使用

完全な例については WeakRef ページ内のの節を参照してください。

js
const tick = () => {
  // 弱参照から要素を取得する (まだ存在していれば)
  const element = this.ref.deref();
  if (element) {
    element.textContent = ++this.count;
  } else {
    // 要素が既に存在しない場合
    console.log("この要素は消滅しました");
    this.stop();
    this.ref = null;
  }
};

仕様書

Specification
ECMAScript Language Specification
# sec-weak-ref.prototype.deref

ブラウザーの互換性

BCD tables only load in the browser

関連情報