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 July 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

js
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 Object.getOwnPropertyNames() können Sie mit dieser Methode alle Symbol-Eigenschaften eines gegebenen Objekts als Array von Symbolen erhalten. Beachten Sie, dass Object.getOwnPropertyNames() selbst keine Symbol-Eigenschaften eines Objekts enthält und nur die String-Eigenschaften zurückgibt.

Da Objekte anfangs keine eigenen Symbol-Eigenschaften besitzen, gibt Object.getOwnPropertySymbols() ein leeres Array zurück, es sei denn, Sie haben Symbol-Eigenschaften auf Ihrem Objekt gesetzt.

Beispiele

Verwendung von Object.getOwnPropertySymbols()

js
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® 2025 Language Specification
# sec-object.getownpropertysymbols

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
getOwnPropertySymbols

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch