logo

Cum se repetă peste un obiect JavaScript?

În acest articol, vom învăța cum să repetăm ​​un obiect JavaScript. În timpul iterației, parcurgeți proprietățile obiectului una câte una și, în funcție de metoda pe care o utilizați pentru iterare, este posibil să aveți acces diferit la aceste proprietăți

Există multe metode de a itera asupra unui obiect, care sunt discutate mai jos:



Cuprins

Metoda 1: Folosind pentru... în buclă

Proprietățile obiectului pot fi repetate folosind o buclă for..in. Această buclă este folosită pentru a repeta peste toate proprietățile iterabile non-Simbol ale unui obiect. Unele obiecte pot conține proprietăți care pot fi moștenite de la prototipurile lor. The hasOwnProperty() metoda poate fi folosită pentru a verifica dacă proprietatea aparține obiectului însuși. Valoarea fiecărei chei a obiectului poate fi găsită folosind cheia ca index al obiectului.

Sintaxă:

for (let key in exampleObj) {  if (exampleObj.hasOwnProperty(key)) {  value = exampleObj[key];  console.log(key, value);  } }>

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.



Javascript
function iterateObject() {  let exampleObj = {  book: 'Sherlock Holmes',  author: 'Arthur Conan Doyle',  genre: 'Mystery'  };  for (let key in exampleObj) {  if (exampleObj.hasOwnProperty(key)) {  value = exampleObj[key];  console.log(key, value);  }  } } iterateObject();>

Ieșire
book Sherlock Holmes author Arthur Conan Doyle genre Mystery>

Metoda 2: Folosind Metoda Object.entries(). și Hartă() Metodă

The Metoda Object.entries(). este folosit pentru a returna o matrice a perechilor de proprietăți enumerabile cu cheie șir ale obiectului. Matricea returnată este utilizată cu Hartă() metodă de a extrage cheia și valoarea din perechi. Cheia și valorile din perechea cheie-valoare pot fi extrase accesând primul și al doilea index al perechii matrice. Primul indice corespunde cheii, iar al doilea indice corespunde valorii perechii.

Sintaxă:

Object.entries(exampleObj).map(entry =>{ let key = intrare[0];  lasă valoare = intrare[1];  console.log(cheie, valoare); });>

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

Javascript
function iterateObject() {  let exampleObj = {  book: 'Sherlock Holmes',  author: 'Arthur Conan Doyle',  genre: 'Mystery'  };  Object.entries(exampleObj).map(entry =>{ let key = intrare[0];  lasă valoare = intrare[1];  console.log(cheie, valoare);  }); } iterateObject();>>>  
Ieșire
book Sherlock Holmes author Arthur Conan Doyle genre Mystery>

Metoda 3: Utilizarea metoda forEach(). și object.keys() Metoda

Object.keys() returnează o matrice de chei ale obiectului șiforEach()>este o metodă de matrice care vă permite să repetați fiecare element din matrice.



Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

Javascript
function iterateObject() {  let exampleObj = {  book: 'Sherlock Holmes',  author: 'Arthur Conan Doyle',  genre: 'Mystery'  };  Object.keys(exampleObj).forEach(key =>{ const value = exampleObj[cheie];  console.log(`${key}: ${value}`);  }); } iterateObject();>>>  
Ieșire Metoda 4: Utilizarea Metoda Lodash _.forOwn().

În această abordare, folosim metoda Lodash _.forOwn(), care ajută la iterarea prin obiecte.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

Javascript
// Defining Lodash variable  const _ = require('lodash'); let users = {  'a': 1,  'b': 2,  'c': 3 }; _.forOwn(users, function (value, key) {  console.log(key, '=', value); });>

Ieșire:

Metoda Object.values() returnează o matrice cu proprietățile enumerabile ale obiectului. Combinând aceasta cu metoda forEach(), puteți repeta fiecare valoare. Pentru a accesa și cheile corespunzătoare, puteți utiliza metoda Object.keys() în tandem.

Sintaxă:

Object.values(exampleObj).forEach((value, index) =>{ cheie const = Object.keys(exampleObj)[index];  console.log(cheie, valoare); });>

Exemplu:

JavaScript
function iterateObject() {  let exampleObj = {  book: 'Sherlock Holmes',  author: 'Arthur Conan Doyle',  genre: 'Mystery'  };  Object.values(exampleObj).forEach((value, index) =>{ cheie const = Object.keys(exampleObj)[index];  console.log(cheie, valoare);  }); } iterateObject();>>>  
Ieșire