I Symbol in JavaScript

Proprietà string e proprietà symbol

Visto che da ECMAScript 6 possiamo utilizzare i symbol oltre che le string come chiavi per le proprietà di un object è opportuno sapere come recuperare queste chiavi.

/// Creo un object con una chiave string e una chiave symbol
const oggetto = {
  [Symbol()]: "Una proprietà con symbol",
  altro: "Una proprietà con nome"
};

/// La proprietà con string può essere recuperata direttamente
oggetto["altro"];
/// "Una proprietà con nome"

/// La proprietà con symbol non può essere recuperata direttamente
oggetto[Symbol()];
/// undefined

Possiamo recuperare tutti i nomi delle proprietà string utilizzando il metodo statico getOwnPropertyNames di Object:

Object.getOwnPropertyNames(oggetto);
/// ["altro"]

Possiamo recuperare i riferimenti a tutte le proprietà symbol utilizzando il metodo statico getOwnPropertySymbol di Object:

Object.getOwnPropertySymbols(oggetto);
/// [Symbol()]

Questo articolo è parte della collana JavaScript: Guida di riferimento per aspiranti web developer.

Continua a leggere questa collana:

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.