Spiegare i record JavaScript?

Spiegare I Record Javascript



JavaScript viene fornito con il tipo di dati non primitivo ' Oggetto ” che è derivato con l'aiuto di tipi di dati primitivi (incorporati). L'oggetto funge da istanza per accedere ai membri JavaScript. Viene utilizzato per richiamare la funzione JavaScript per eseguire l'attività specifica che i tipi di dati primitivi non possono eseguire. Tuttavia, uno svantaggio di questo tipo di dati è che esegue l'operazione di confronto sulla base della sua identità, non del contenuto. Per risolvere questo problema JavaScript offre il nuovo tipo di dati ' Record ” poiché confronta rigorosamente sulla base dei suoi contenuti, non dell'identità.

Questa guida spiega i record JavaScript.







Cosa sono i 'Record'?

javascript' Record ” è un nuovo tipo primitivo (stringhe, numeri, simboli) simile al built-in . L'unica differenza è che i 'record' sono puramente immutabili, ovvero il valore delle loro chiavi non può essere modificato una volta che sono state inizializzate.



Sintassi



La sintassi di ' Documentazione ” è identico a un “Oggetto”, ma richiede un “ # (cancelletto)' prima delle parentesi graffe che lo denotano come 'Record':





const nomeregistrato = #{
/*
chiave: valore
/*
}


Usiamo la sintassi sopra indicata per creare un nuovo record.

Come creare record?

Per creare un record, specificare il simbolo '#(cancelletto)' all'inizio delle parentesi graffe come mostrato nel blocco di codice seguente:



const persona = #{
nome: 'O' ,
nome: 'Usmano' ,
età: ventuno ,
}
console.log ( person.fname )
console.log ( persona.lnome )
console.log ( personaggio )


Nel blocco di codice sopra:

    • IL ' persona ” si riferisce a un nuovo “Record” con le seguenti chiavi “fname”, “lname” e “age”.
    • Successivamente, il “ consolare. tronco d'albero() Il metodo ' mostra i valori della chiave 'persona' rispettivamente uno per uno.

Nota: L'utente può anche specificare il contenuto 'Records' in una riga come questa:

const persona = #{fname: 'Ali', lname: 'Usman', età: 21}


Produzione


Si può vedere che l'output mostra tutti i valori chiave della “persona” del Record creato.

Limitazione dei record

Il 'Record' non accetta un 'Array' e un 'Oggetto' come chiave. Se l'utente li passa a un record, il compilatore genera un ' TipoErrore ”. Il seguente blocco di codice lo mostra praticamente:

const nuovoRecord = #{
arr: [ 'HTML' , 'CSS' , 'Javascript' ]
}
console.log ( persona.arr )


Nelle righe di codice sopra:

    • IL ' nuovo record ” inizializza un array denominato “arr” come sua chiave.
    • Successivamente, il “ consolare. tronco d'albero() ” visualizza il valore della chiave “arr” specificato in “newRecord”.

Produzione


La console visualizza 'TypeError(passing un-expected type)' perché 'Records' non accetta un array come chiave.

Comprensione dei record JavaScript mediante esempi

Questa sezione comprende gli usi di 'Records' praticamente con l'aiuto di esempi forniti.

Partiamo dal primo esempio.

Esempio 1: i record sono profondamente immutabili

javascript' Record ” sono tipi primitivi profondamente immutabili. Il 'profondamente immutabile' significa che tutti i valori chiave di un record non possono essere modificati o cambiati a nessun livello una volta che sono stati impostati. I tipi 'primitivi' denotano tutti i tipi di dati JavaScript di base come string, number, null, undefined e molti altri.

Il seguente blocco di codice mostra praticamente il concetto dichiarato:

const mioRecord = #{
nome: 'O' ,
età: ventuno ,
}
mioRecord.name= 'Haroon'


Nel blocco di codice sopra, il ' myRecord ' chiave ' nome ” il valore viene modificato dopo la sua inizializzazione.

Produzione


Si può osservare che il compilatore mostra il “TypeError” alla modifica del valore della chiave “newRecord”.

Esempio 2: i record sono comparativi

Il vantaggio principale di 'Records' è che vengono confrontati sulla base dei loro valori, non dell'identità. Mentre gli 'Oggetti' si confrontano in base alle loro identità, non ai valori. Se due valori di record sono uguali, il compilatore recupera true.

Vediamolo praticamente con l'aiuto di date righe di codice:

const mioRecord = #{
nome: 'O' ,
età: ventuno ,
}
console.log ( mioRecord === #{
nome: 'O' ,
età: ventuno ,
} ) ;


Qui, il suddetto frammento di codice crea due record che vengono confrontati con l'aiuto del ' stretta uguaglianza (===)”.

Produzione


L'output restituisce un ' VERO ” Valore booleano che indica che gli operatori specificati, ad esempio 'Records', sono uguali.

Esempio 3: Converti record in oggetto

I 'Record' JavaScript possono anche essere convertiti in un tipo di dati 'Oggetto' con l'aiuto del costruttore 'Oggetto'. Ecco la sua implementazione pratica:

permettere mioRecord = #{ Uno: 1, Due: 2 }
console.log ( Oggetto ( myRecord ) )
console.log ( typeof myRecord )


Nelle righe di codice precedenti:

    • Il primo ' lconsole.and() ” usa il costruttore “Object” per convertire il “ myRecord ” in un “oggetto.
    • Il secondo metodo 'console.log()' utilizza il metodo ' tipo di ” parola chiave per controllare il tipo di “myRecord”.

Produzione


L'output mostra il 'newRecord' convertito come ' Oggetto ” che conferma che il “newRecord” è stato convertito con successo in un “oggetto”.

Esempio 4: Converti oggetto in record

L'utente può anche convertire 'Oggetto' in 'Record' a scopo di confronto con l'aiuto del ' Documentazione() ' metodo. Facciamolo praticamente:

permettere mioOggetto = { Uno: 1 , Due: 2 }
permettere mioRecord = Registra ( mioOggetto )
console.log ( myRecord )


Ora, il frammento di codice sopra utilizza il ' Documentazione() ” per convertire l'oggetto “myObj” dato in “myRecord”.

Produzione


L'output mostra correttamente l'oggetto convertito 'myObj' nel contenuto 'myRecord'.

Esempio 5: creazione di nuovi record da record esistenti

Come discusso nel primo esempio, i 'record' sono immutabili, ovvero i loro valori chiave non possono essere modificati. Tuttavia, l'utente può creare un nuovo 'Record' dal 'Record' esistente insieme all'aggiunta di altri valori.

Segui lo snippet di codice fornito per creare un nuovo record da quello esistente:

permettere vecchioRecord = #{A: 1, B: 2 };
permettere nuovoRecord = #{ ...myRecord, C: 3, D:4}
console.log ( nuovo record )


Nel codice JavaScript sopra:

    • IL ' oldRecord ” si riferisce a un record esistente con due valori chiave.
    • Successivamente il “ nuovo record ” corrisponde a un nuovo Record che viene creato con l'aiuto del “oldRecord” esistente e anche aggiungendo i nuovi valori chiave specificati.
    • Infine il “ consolare. tronco d'albero() ” visualizza il Record appena creato denominato “newRecord”.

Produzione


L'output visualizza tutti i valori chiave del record appena creato.

Esempio 6: accesso ai record utilizzando il metodo 'Object.keys()'.

L'utente può utilizzare il JavaScript integrato ' chiavi() ' metodo di ' Oggetto ” per accedere alle chiavi di un Record. In questo scenario viene utilizzato per accedere alle chiavi “myRecord”:

permettere mioRecord = #{A: 1, B: 2 };
permettere recordKeys = Object.keys ( myRecord ) ;
console.log ( recordKeys )


Il frammento di codice sopra utilizza il ' Oggetto.keys() ” per accedere a tutte le chiavi presenti nel “myRecord”.

Produzione


L'output mostra tutte le chiavi del 'myRecord' nel formato matrice e anche con i loro indici in un formato coppia chiave-valore.

Conclusione

javascript' Record ' sono il tipo di dati di livello avanzato che è profondamente immutabile. Funziona in modo simile a un 'Oggetto' ma la differenza principale è che il suo valore può essere modificato o aggiornato una volta impostato. Richiede un simbolo '# (cancelletto)' prima delle parentesi graffe per la dichiarazione altrimenti funge da oggetto. Questa guida ha spiegato brevemente il tipo di dati dei record JavaScript.