Hartă vs obiect în JavaScript

Harta Vs Obiect In Javascript



Hartă ' și ' Obiect ” sunt două structuri de date comune în JavaScript utilizate pentru a stoca perechi cheie-valoare. O hartă este utilizată atunci când aveți nevoie de o structură de date care poate stoca orice tip de date ca cheie sau valoare și aveți nevoie de o colecție ordonată de perechi cheie-valoare. În timp ce Object este utilizat atunci când trebuie doar să stocați chei șir.

Această postare va explica diferența dintre Hartă și obiect în JavaScript.

Cum se definește un obiect în JavaScript?

În JavaScript, un obiect este o colecție de proprietăți, fiecare cu o pereche cheie-valoare. „ cheie ' este ' Nume ”, și un „ valoare ” este „valoarea” față de cheie. Obiectele pot reprezenta obiecte din lumea reală, cum ar fi o mașină, o persoană sau un cont bancar. Ele pot reprezenta, de asemenea, obiecte mai abstracte, cum ar fi un punct matematic din spațiu, o culoare sau o dată.







Sintaxă



Un obiect poate fi creat folosind paranteze cu notația literală a obiectului {} sau constructorul Object. Folosind notația literală sau parantezele, utilizați sintaxa de mai jos:



const obiect = {
cheie : valoare,
cheie : valoare
}

Crearea unui obiect folosind constructorul Object sau „ nou ” cuvânt cheie, utilizați următoarea sintaxă:





const obiect = nou Obiect ( ) ;

obiect. cheie = valoare ;

Notă: Rețineți că cheile sau numele proprietăților obiectului trebuie să fie un șir.

Exemplul 1: Creați un obiect utilizând notația literală în JavaScript

În exemplul următor, vom crea un obiect numit „ stdObject ” folosind notație literală sau paranteze:



var stdObject = {
Nume : 'Ioan' ,
vârstă : 18 ,
rola numărul : 25 ,
standard : 9
}

Imprimați obiectul pe consolă:

consolă. Buturuga ( stdObject ) ;

Ieșire

Exemplul 2: Creați un obiect utilizând Object Constructor în JavaScript

Aici, vom crea un obiect folosind constructorul Object utilizând „ nou ” cuvânt cheie:

const stdObject = nou Obiect ( ) ;

Acum, adăugați proprietățile (cheie-valoare) obiectelor folosind notația punct(.):

stdObject. Nume = 'La dracu' ;

stdObject. vârstă = 19 ;

stdObject. rola numărul = cincisprezece ;

stdObject. standard = 10 ;

În cele din urmă, afișați obiectul pe consolă folosind butonul „ console.log() ” metoda:

consolă. Buturuga ( stdObject ) ;

Ieșire

Cum se definește harta în JavaScript?

În JavaScript, un „ Hartă ” este o structură de date care conține perechi cheie-valoare similare unui obiect. Vă permite să asociați datele cu chei și să recuperați datele ulterior utilizând cheile. Hărțile pot fi utilizate pentru a implementa dicționare, tabele hash și alte structuri de date care mapează cheile la valori.

Sintaxă

Pentru a inițializa o hartă utilizați următoarea sintaxă:

const Hartă = nou Hartă ( [

[ 'cheie' , 'valoare' ] ,

[ 'cheie' , 'valoare' ]

] ) ;

De asemenea, puteți crea o hartă utilizând constructorul Hărții sau utilizând noul operator și setați valori utilizând „ a stabilit() ” metoda:

const Hartă = nou Hartă ( ) ;

Hartă. a stabilit ( 'cheie' , 'valoare' ) ;

Exemplu: Creați o hartă în JavaScript

În exemplul dat, vom crea o hartă folosind ambele sintaxe.

Creați o hartă folosind metoda de inițializare. Aici, vom seta cheile ca șir în timp ce puteți seta cheile într-o hartă de orice tip:

const mapStd = hartă nouă ( [
[ 'Nume' , 'Ioan' ] ,
[ 'vârstă' , 18 ] ,
[ 'rola numărul' , 25 ] ,
[ 'standard' , 9 ] ,
] ) ;

Sau creați o hartă apelând constructorul Map sau noul cuvânt cheie/operator:

const mapStd = nou Hartă ( ) ;

Setați valori în Hartă într-o pereche cheie-valoare utilizând „ a stabilit() ” metoda:

mapStd. a stabilit ( 'Nume' , 'Ioan' ) ;

mapStd. a stabilit ( 'vârstă' , 18 ) ;

mapStd. a stabilit ( 'rola numărul' , 25 ) ;

mapStd. a stabilit ( 'standard' , 9 ) ;

Pentru a imprima harta pe consolă, utilizați „ intrări() ” metoda cu “ pentru-de ” buclă:

pentru ( const [ valoare cheie ] de mapStd. intrări ( ) ) {

consolă. Buturuga ( `$ { cheie } : $ { valoare } ` ) ;

}

Sau pentru a accesa valoarea oricărei chei/proprietăți specifice, utilizați „ obține() ” metoda:

consolă. Buturuga ( 'Rolul lui' + mapStd. obține ( 'Nume' ) + ' este ' + mapStd. obține ( 'rola numărul' ) ) ;

Ieșirea indică toate proprietățile hărții și valoarea proprietății specifice:

Hartă vs obiect în JavaScript

Diferența principală dintre Hartă și Obiect este următoarea:

Hartă Obiect
A fost introdus în ECMAScript 6 în 2015. JavaScript a introdus tipul de date Object în prima sa versiune (ECMAScript 1) lansată în 1997.
Harta permite chei de orice tip de date (de exemplu, obiecte, funcții, numere etc.). Cheile obiectelor trebuie să fie șiruri.
Proprietățile unei hărți pot fi accesate utilizând metoda get(). Proprietățile obiectului pot fi accesate utilizând notația punct sau notația paranteze pătrate.
Harta are o proprietate de dimensiune încorporată pentru a returna numărul de perechi cheie-valoare Obiectul nu are această caracteristică.
Harta este iterabilă. Permite trecerea în buclă prin toate perechile cheie-valoare folosind unele metode încorporate, cum ar fi forEach(), keys(), values() și entries(). Obiectul nu este iterabil. Este necesar să folosiți bucle „for-in” sau metoda Object.entries() pentru iterarea perechilor cheie-valoare.
Harta este ordonată. Obiectul este neordonat.

Când lucrați cu seturi de date mici, diferența de performanță dintre Hărți și obiecte este neglijabilă, dar când lucrați cu seturi de date mai mari, Hărțile pot fi mai rapide, deoarece sunt optimizate pentru performanță.

Când preferă Map față de obiectele din JavaScript?

Când trebuie să stocați perechi cheie-valoare într-o formă ordonată sau valoarea ca cheie să fie orice tip de date, cum ar fi numere, obiecte sau simboluri, utilizați „ Hartă ' structură de date. Obiectele vor fi folosite atunci când trebuie să utilizați șiruri ca chei și atunci când nu aveți nevoie de nicio caracteristică a Hărților. Diferența de performanță dintre Hărți și obiecte este neglijabilă atunci când lucrați cu seturi de date mici, dar atunci când lucrați cu seturi de date mai mari, Hărțile pot fi mai rapide, deoarece sunt optimizate pentru performanță.

Concluzie

Map și Object sunt ambele folosite pentru a stoca date ca perechi cheie-valoare în JavaScript, dar au unele diferențe. Harta este o structură de date mai puternică și mai flexibilă decât Object și este alegerea preferată atunci când trebuie să stocați perechi cheie-valoare care trebuie ordonate, au chei de diferite tipuri de date sau au o proprietate de dimensiune. Această postare a explicat diferența dintre Hartă și obiect în JavaScript.