Šajā piemērā jūs iemācīsities rakstīt JavaScript programmu, kas pārvietosies pa objektu.
Lai saprastu šo piemēru, jums jāpārzina šādas JavaScript programmēšanas tēmas:
- JavaScript objekti
- JavaScript vietnei…
1. piemērs: cilne caur objektu, kas paredzēta domēnam…
// program to loop through an object using for… in loop const student = ( name: 'John', age: 20, hobbies: ('reading', 'games', 'coding'), ); // using for… in for (let key in student) ( let value; // get the value value = student(key); console.log(key + " - " + value); )
Rezultāts
vārds - Jāņa vecums - 20 vaļasprieki - ("lasīšana", "spēles", "kodēšana")
Iepriekš minētajā piemērā for… in
cilpa tiek izmantota, lai cilpa izietu caur student
objektu.
Katras atslēgas vērtībai var piekļūt, izmantojot student(key)
.
Piezīme . for… in
Cilpā tiks skaitīti arī iedzimtie īpašumi.
Piemēram,
const student = ( name: 'John', age: 20, hobbies: ('reading', 'games', 'coding'), ); const person = ( gender: 'male' ) // inheriting property student.__proto__ = person; for (let key in student) ( let value; // get the value value = student(key); console.log(key + " - " + value); )
Rezultāts
vārds - Jāņa vecums - 20 vaļasprieki - ("lasīšana", "spēles", "kodēšana") dzimums - vīrietis
Ja vēlaties, izmantojot hasOwnProperty()
metodi , varat pārvietoties tikai caur paša objekta īpašumu .
if (student.hasOwnProperty(key)) ( ++count: )
2. piemērs: cilpa caur objektu, izmantojot Object.entries un… no
// program to loop through an object using for… in loop const student = ( name: 'John', age: 20, hobbies: ('reading', 'games', 'coding'), ); // using Object.entries // using for… of loop for (let (key, value) of Object.entries(student)) ( console.log(key + " - " + value); )
Rezultāts
vārds - Jāņa vecums - 20 vaļasprieki - ("lasīšana", "spēles", "kodēšana")
Iepriekš minētajā programmā objekts tiek savienots, izmantojot Object.entries()
metodi un for… of
cilpu.
Object.entries()
Metode atgriež masīvu konkrētajam objektam ir atslēgu / vērtību pārus. for… of
Cilpa tiek izmantota, lai cilpas, izmantojot masīvu.