Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. JavaScript-Fehlerreferenz
  5. TypeError: WeakSet-Schlüssel/WeakMap-Wert 'x' muss ein Objekt oder ein nicht registriertes Symbol sein

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

TypeError: WeakSet-Schlüssel/WeakMap-Wert 'x' muss ein Objekt oder ein nicht registriertes Symbol sein

Der JavaScript-Fehler "WeakSet-Schlüssel (oder WeakMap-Wert) 'x' muss ein Objekt oder ein nicht registriertes Symbol sein" tritt auf, wenn ein Wert eines ungültigen Typs als Schlüssel in einemWeakSet oder als Wert in einerWeakMap verwendet wird.

Meldung

TypeError: Invalid value used as weak map key (V8-based)TypeError: WeakMap key 1 must be an object or an unregistered symbol (Firefox)TypeError: WeakMap keys must be objects or non-registered symbols (Safari)TypeError: Invalid value used in weak set (V8-based)TypeError: WeakSet value 1 must be an object or an unregistered symbol (Firefox)TypeError: WeakSet values must be objects or non-registered symbols (Safari)

Fehlertyp

TypeError

Was ist schiefgelaufen?

WeakSet undWeakMap erfordern, dass die SchlüsselMüll sammelbar sind. Nur Objekte und nicht registrierte Symbole (d.h.Symbole, die nicht vonSymbol.for() zurückgegeben werden) sind gültig. Für mehr Informationen sieheSpeicherverwaltung. Wenn Sie Schlüssel verwenden möchten, die Zeichenfolgen, Zahlen oder andere primitive Werte sind, sollten Sie sie stattdessen in einem regulärenSet oderMap speichern.

Beispiele

Ungültige Fälle

js
new WeakSet().add(1); // TypeErrornew WeakMap().set(1, {}); // TypeErrornew WeakSet([1]); // TypeErrornew WeakMap([[1, {}]]); // TypeError

Gültige Fälle

js
new WeakSet().add({}); // OKnew WeakMap().set({}, 1); // OKnew Set([1]); // OKnew Map([[1, {}]]); // OK

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp