Object.getOwnPropertySymbols()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
Die statische Methode Object.getOwnPropertySymbols()
gibt ein Array aller Symbol-Eigenschaften zurück, die direkt auf einem gegebenen Objekt gefunden werden.
Probieren Sie es aus
const object1 = {};
const a = Symbol("a");
const b = Symbol.for("b");
object1[a] = "localSymbol";
object1[b] = "globalSymbol";
const objectSymbols = Object.getOwnPropertySymbols(object1);
console.log(objectSymbols.length);
// Expected output: 2
Syntax
Object.getOwnPropertySymbols(obj)
Parameter
obj
-
Das Objekt, dessen Symbol-Eigenschaften zurückgegeben werden sollen.
Rückgabewert
Ein Array aller Symbol-Eigenschaften, die direkt auf dem gegebenen Objekt gefunden werden.
Beschreibung
Ähnlich wie bei Object.getOwnPropertyNames()
können Sie alle Symbol-Eigenschaften eines gegebenen Objekts als ein Array von Symbolen erhalten. Beachten Sie, dass Object.getOwnPropertyNames()
selbst nicht die Symbol-Eigenschaften eines Objekts enthält, sondern nur die String-Eigenschaften.
Da alle Objekte anfangs keine eigenen Symbol-Eigenschaften haben, gibt Object.getOwnPropertySymbols()
ein leeres Array zurück, es sei denn, Sie haben Symbol-Eigenschaften auf Ihrem Objekt gesetzt.
Beispiele
Verwendung von Object.getOwnPropertySymbols()
const obj = {};
const a = Symbol("a");
const b = Symbol.for("b");
obj[a] = "localSymbol";
obj[b] = "globalSymbol";
const objectSymbols = Object.getOwnPropertySymbols(obj);
console.log(objectSymbols.length); // 2
console.log(objectSymbols); // [Symbol(a), Symbol(b)]
console.log(objectSymbols[0]); // Symbol(a)
Spezifikationen
Specification |
---|
ECMAScript® 2026 Language Specification # sec-object.getownpropertysymbols |