Kā atkārtot JavaScript objektu?
Šajā rakstā mēs uzzināsim, kā atkārtot JavaScript objektu. Iterācijas laikā jūs pārskatāt objekta rekvizītus pa vienam, un atkarībā no iterācijai izmantotās metodes jums var būt atšķirīga piekļuve šiem rekvizītiem.
Ir daudz metožu, kā atkārtot objektu, kas ir apskatīts tālāk:
Satura rādītājs
- Tiek izmantots… cilpā
- Izmantojot Object.entries() metodi un map() metodi
- Izmantojot metodi forEach() un metodi object.keys()
- Izmantojot Lodash _.forOwn() metodi
1. metode: Izmantojot priekš… cilpā
Objekta īpašības var atkārtot, izmantojot for..in cilpu. Šī cilpa tiek izmantota, lai atkārtotu visas objekta īpašības, kas nav simboliskas. Dažos objektos var būt īpašības, kas var būt mantotas no to prototipiem. The hasOwnProperty() metodi var izmantot, lai pārbaudītu, vai īpašums pieder pašam objektam. Katras objekta atslēgas vērtību var atrast, izmantojot atslēgu kā objekta indeksu.
Sintakse:
for (let key in exampleObj) { if (exampleObj.hasOwnProperty(key)) { value = exampleObj[key]; console.log(key, value); } } Piemērs: Šis piemērs parāda iepriekš izskaidrotās pieejas ieviešanu.
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(); Izvade
book Sherlock Holmes author Arthur Conan Doyle genre Mystery
2. metode: Izmantojot Object.entries() metode un karte () Metode
The Object.entries() metode tiek izmantots, lai atgrieztu paša objekta uzskaitāmo ar virkni atslēgtu rekvizītu pāru masīvu. Atgrieztais masīvs tiek izmantots kopā ar karte () metode atslēgas un vērtības iegūšanai no pāriem. Atslēgu un vērtības no atslēgas vērtību pāra var iegūt, piekļūstot masīva pāra pirmajam un otrajam indeksam. Pirmais indekss atbilst atslēgai, bet otrais indekss atbilst pāra vērtībai.
Sintakse:
Object.entries(exampleObj).map(entry =>{ let key = ieraksts[0]; let value = ieraksts[1]; konsole.log(atslēga, vērtība); }); Piemērs: Šis piemērs parāda iepriekš izskaidrotās pieejas ieviešanu.
Javascript function iterateObject() { let exampleObj = { book: 'Sherlock Holmes', author: 'Arthur Conan Doyle', genre: 'Mystery' }; Object.entries(exampleObj).map(entry =>{ let key = ieraksts[0]; let value = ieraksts[1]; konsole.log(atslēga, vērtība); }); } iterateObject();>>
Izvade book Sherlock Holmes author Arthur Conan Doyle genre Mystery
3. metode: izmantošana katrai() metodei un object.keys() Metode
Object.keys() atgriež objekta atslēgu masīvu un forEach()> ir masīva metode, kas ļauj atkārtot katru masīva elementu.
Piemērs: Šis piemērs parāda iepriekš izskaidrotās pieejas ieviešanu.
Javascript function iterateObject() { let exampleObj = { book: 'Sherlock Holmes', author: 'Arthur Conan Doyle', genre: 'Mystery' }; Object.keys(exampleObj).forEach(key =>{ const value = piemērsObj[atslēga]; console.log(`${key}: ${value}`); }); } iterateObject();>>
Izvade 4. metode: izmantošana Lodash _.forOwn() metode Šajā pieejā mēs izmantojam Lodash _.forOwn() metodi, kas palīdz atkārtot objektus.
Piemērs: Šis piemērs parāda iepriekš izskaidrotās pieejas ieviešanu.
Javascript // Defining Lodash variable const _ = require('lodash'); let users = { 'a': 1, 'b': 2, 'c': 3 }; _.forOwn(users, function (value, key) { console.log(key, '=', value); }); Izvade:
Metode Object.values() atgriež paša objekta uzskaitāmo rekvizītu vērtību masīvu. Apvienojot to ar forEach() metodi, jūs varat atkārtot katru vērtību. Lai piekļūtu arī atbilstošajiem taustiņiem, varat izmantot metodi Object.keys() tandēmā. Sintakse:
Object.values(exampleObj).forEach((value, index) =>{ const key = Object.keys(exampleObj)[index]; konsole.log(atslēga, vērtība); }); Piemērs:
JavaScript function iterateObject() { let exampleObj = { book: 'Sherlock Holmes', author: 'Arthur Conan Doyle', genre: 'Mystery' }; Object.values(exampleObj).forEach((value, index) =>{ const key = Object.keys(exampleObj)[index]; konsole.log(atslēga, vērtība); }); } iterateObject();>>
Izvade
Šeit ir katra koledža, kas piedāvā 100% finansiālu palīdzību