El símbolo es un tipo de datos en JS. Normalmente se utiliza para crear claves únicas y claves de objetos ocultos en Javascript.
registro global de símbolos: El registro global de símbolos es un espacio donde se almacenan los símbolos creados con Symbol.for.
sintaxis
En el siguiente ejemplo, "john" es un descriptor y key_one y key_two son símbolos.
const key_one = Symbol("john"); //local symbol const key_two = Symbol.for("john"); //global symbol console.log(typeof key_one) // symbol console.log(typeof key_two); //symbol
Como dije antes, cada símbolo es único incluso si el descriptor es el mismo en los símbolos locales. Validémoslo.
aplicación
const key_one = Symbol("john"); const key_two = Symbol("john"); key_one == key_two // false key_one === key_two //false
const key_one = Symbol.for("foo"); const key_two = Symbol.for("foo"); console.log(key_one === key_two); //true
aplicación
const zero = Symbol("0"); const temp = { 0:"zero", 1:"one", [zero]:"zero", 1.1:"one one", } const keys = Object.keys(temp); //["0","1","1.1"] console.log(temp[1.1]) // one one console.log(Object.getOwnPropertySymbols(temp)) // [Symbol(0)]
Usando Symbol.keyFor(symbol) puede obtener un descriptor de símbolos globales
const key_one = Symbol.for("john") Symbol.keyFor(key_one) // "john" typeof Symbol.keyFor(key_one) //string
¿Por favor apóyenme en dev.to y linkedin? ¿TY?
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3