¿Explicar los registros de JavaScript?

Explicar Los Registros De Javascript



JavaScript viene con el tipo de datos no primitivo ' Objeto ” que se deriva con la ayuda de tipos de datos primitivos (incorporados). El 'Objeto' actúa como una instancia para acceder a los miembros de JavaScript. Se utiliza para invocar la función de JavaScript para realizar la tarea específica que los tipos de datos primitivos no pueden. Sin embargo, una desventaja de este tipo de datos es que realiza la operación de comparación sobre la base de su identidad, no del contenido. Para resolver este problema, JavaScript ofrece el nuevo tipo de datos ' Registros ” ya que se compara estrictamente sobre la base de su contenido, no de su identidad.

Esta guía explica los registros de JavaScript.







¿Qué son los “Registros”?

JavaScript “ Registros ” es un nuevo tipo primitivo (cadenas, números, símbolos) similar al incorporado . La única diferencia es que los 'Registros' son puramente inmutables, es decir, el valor de sus claves no se puede cambiar una vez que se han inicializado.



Sintaxis



La sintaxis de “ Registro ” es idéntico a un “Objeto”, pero requiere un “ # (almohadilla)” antes de las llaves que lo denotan como “Registro”:





const nombrerecordado = #{
  /*
valor clave
/*
}

 
Usemos la sintaxis mencionada anteriormente para crear un nuevo registro.

¿Cómo crear registros?

Para crear un registro, especifique el símbolo “#(hash)” al comienzo de las llaves como se muestra en el siguiente bloque de código:



persona constante = #{
fnombre: 'O' ,
nombre: 'Usmán' ,
edad: 21 ,
}
consola.log ( persona.fname )
consola.log ( persona.nombre )
consola.log ( personaje )

 
En el bloque de código anterior:

    • El ' persona ” se refiere a un nuevo “Registro” que tiene las siguientes claves “fname”, “lname” y “age”.
    • A continuación, el “ consola. registro() El método ” muestra los valores clave de “persona” uno por uno respectivamente.

Nota: El usuario también puede especificar el contenido de 'Registros' en una línea como esta:

persona constante = #{nombre: 'Ali', nombre: 'Usman', edad: 21}

 
Producción


Se puede ver que la salida muestra todos los valores clave de la 'persona' del registro creado.

Limitación de Registros

El “Registro” no acepta un “Array” y un “Objeto” como clave. Si el usuario los pasa a un registro, el compilador genera un ' Error de tecleado ”. El siguiente bloque de código lo muestra de manera práctica:

const nuevoRegistro = #{
Arr: [ 'HTML' , 'CSS' , 'JavaScript' ]
}
consola.log ( persona.arr )

 
En las líneas de código anteriores:

    • El ' nuevo record ” inicializa una matriz llamada “arr” como su clave.
    • A continuación, el “ consola. registro() ” muestra el valor de la clave “arr” especificado en el “nuevoRegistro”.

Producción


La consola muestra el 'TypeError (pasando un tipo inesperado)' porque los 'Registros' no aceptan una matriz como clave.

Comprender los registros de JavaScript usando ejemplos

Esta sección comprende los usos de “Registros” prácticamente con la ayuda de ejemplos dados.

Comencemos con el primer ejemplo.

Ejemplo 1: los registros son profundamente inmutables

JavaScript “ Registros ” son tipos primitivos profundamente inmutables. El 'profundamente inmutable' significa que todos los valores clave de un registro no se pueden modificar ni cambiar en ningún nivel una vez que se han establecido. Los tipos 'primitivos' denotan todos los tipos de datos básicos de JavaScript, como cadena, número, nulo, indefinido y muchos otros.

El siguiente bloque de código muestra el concepto establecido de manera práctica:

const miRegistro = #{
nombre: 'O' ,
edad: 21 ,
  }
miRegistro.nombre= 'Haroon'

 
En el bloque de código anterior, el ' miRegistro ' llave ' nombre El valor se modifica después de su inicialización.

Producción


Se puede observar que el compilador muestra el “TypeError” al modificar el valor de la clave “newRecord”.

Ejemplo 2: los registros son comparativos

La principal ventaja de los 'Registros' es que se comparan en función de sus valores, no de su identidad. Mientras que los 'Objetos' se comparan según sus identidades, no sus valores. Si dos valores de registros son iguales, el compilador recupera verdadero.

Veámoslo de manera práctica con la ayuda de líneas de código dadas:

const miRegistro = #{
nombre: 'O' ,
edad: 21 ,
  }
consola.log ( miRegistro === #{
nombre: 'O' ,
edad: 21 ,
  } ) ;

 
Aquí, el fragmento de código anterior crea dos registros que se comparan con la ayuda de ' igualdad estricta (===)” operador.

Producción


La salida devuelve un ' verdadero Valor booleano que significa que los operadores especificados, es decir, 'Registros' son iguales.

Ejemplo 3: Convertir registro en objeto

Los 'Registros' de JavaScript también se pueden convertir en un tipo de datos 'Objeto' con la ayuda del constructor 'Objeto'. Aquí está su implementación práctica:

dejar miRegistro = #{ Uno: 1, Dos: 2 }
consola.log ( Objeto ( miRegistro ) )
consola.log ( tipo de mi registro )

 
En las líneas de código anteriores:

    • La primera ' lconsole.y() El método utiliza el constructor 'Objeto' para convertir el ' miRegistro ” en un “objeto.
    • El segundo método “console.log()” utiliza el “ tipo de ” palabra clave para verificar el tipo de “myRecord”.

Producción


La salida muestra el 'nuevo registro' convertido como un ' Objeto ” que confirma que el “nuevoRegistro” se ha convertido con éxito en un “objeto”.

Ejemplo 4: Convertir objeto en registro

El usuario también puede convertir 'Objeto' en 'Registro' con fines de comparación con la ayuda de ' Registro() ' método. Hagámoslo de manera práctica:

dejar miObj = { Uno: 1 , Dos: 2 }
dejar miRegistro = Registro ( miObj )
consola.log ( miRegistro )

 
Ahora, el fragmento de código anterior usa el ' Registro() ” para convertir el objeto “myObj” dado a “myRecord”.

Producción


El resultado muestra el objeto convertido 'myObj' en contenido 'myRecord' con éxito.

Ejemplo 5: Crear nuevos registros a partir de registros existentes

Como se discutió en el primer ejemplo, los 'Registros' son inmutables, es decir, sus valores clave no se pueden modificar. Sin embargo, el usuario puede crear un nuevo 'Registro' a partir del 'Registro' existente junto con la adición de algunos otros valores.

Siga el fragmento de código proporcionado para crear un nuevo registro a partir del existente:

dejar registro antiguo = #{A: 1, B: 2};
dejar nuevoRegistro = #{ ...miRegistro, C: 3, D:4}
consola.log ( nuevo record )

 
En el código JavaScript anterior:

    • El ' registro antiguo ” se refiere a un registro existente que tiene dos valores clave.
    • A continuación el “ nuevo record ” corresponde a un nuevo registro que se crea con la ayuda del “oldRecord” existente y también agregando los nuevos valores clave especificados.
    • Por último, el “ consola. registro() ” muestra el Registro recién creado llamado “nuevoRegistro”.

Producción


La salida muestra todos los valores clave del registro recién creado.

Ejemplo 6: Acceso a registros usando el método “Object.keys()”

El usuario puede usar el JavaScript incorporado “ llaves() ' método de ' Objeto ” para acceder a las claves de un Registro. En este escenario, se utiliza para acceder a las teclas “myRecord”:

dejar miRegistro = #{A: 1, B: 2};
dejar recordKeys = Objeto.claves ( miRegistro ) ;
consola.log ( claves de registro )

 
El fragmento de código anterior utiliza el ' Objeto.claves() ” para acceder a todas las claves presentes en el “myRecord”.

Producción


La salida muestra todas las claves de 'myRecord' en formato de matriz y también con sus índices en un formato de par clave-valor.

Conclusión

JavaScript “ Registros ” son el tipo de datos de nivel avanzado que es profundamente inmutable. Funciona de manera similar a un 'Objeto', pero la principal diferencia es que su valor se puede cambiar o actualizar una vez que se ha configurado. Requiere un símbolo '# (hash)' antes de las llaves para la declaración; de lo contrario, actúa como un objeto. Esta guía explica brevemente el tipo de datos de registros de JavaScript.