Skip to content

Instantly share code, notes, and snippets.

@jerlyrosa
Last active November 3, 2020 01:14
Show Gist options
  • Save jerlyrosa/d65569352c48a6d85c7361e8418c0986 to your computer and use it in GitHub Desktop.
Save jerlyrosa/d65569352c48a6d85c7361e8418c0986 to your computer and use it in GitHub Desktop.
Tipo de dato Symbols en javascript
// Los valores de los tipos de datos Symbols son unicos e inmutables se suele ser utlizado como indetificadores en un objecto.
const id = Symbol('keys');//Asi se declara un symbol y se le pasa como parametro una descripcion para nostros(Opcional)
const id2 = Symbol('keys');
const id3 = Symbol('keys');
const SALUDAR = Symbol();
const PERSON_ID = {
[id]: '001',// Los valores de esta propiedad son tipos symbol
[id2]: '002',
[id3]: '003'
}
//De esta manera creamos una funcion que sea de tipo Symbol
PERSON_ID[SALUDAR] = ()=> console.log(`Hola ${PERSON_ID[id]}`);
PERSON_ID[SALUDAR]();//Asi llamamos a una funcion tipo Symbol
//Listamos todas la propiedades symbol de un object y la muestra en un array
console.log(Object.getOwnPropertySymbols(PERSON_ID));
//Ejemplo De la inmutalidad de los datos tipos symbol y que se comportan como propiedades privadas del objecto
PERSON_ID.id ='005'
for (const property in PERSON_ID) {
console.log(property);
console.log(PERSON_ID[property]);
}
console.log(PERSON_ID);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment