Junior
Ի՞նչ տեսակների for ցիկլեր եք գիտակցում JavaScript-ում։
sobes.tech AI
Պատասխան AI-ից
JavaScript-ում կան մի քանի տեսակ for ցիկլեր:
-
for(հին տարբերակը): Օգտագործվում է թվային տիրույթով անցնելու կամ որոշակի քանակությամբ գործողություն կատարելու համար:// Թվային տիրույթով անցում for (let i = 0; i < 5; i++) { console.log(i); // 0, 1, 2, 3, 4 } -
for...in: Դիտարկում է ** բանալի** (գույքագրելի) հատկությունները օբյեկտի, ներառյալ պրոտոտիպի հատկությունները։ Չի խորհուրդ տրվում օգտագործել զանգվածների համար՝ հնարավոր կարգի և ոչ թվային հատկությունների ցուցակման խնդիրների պատճառով:const obj = { a: 1, b: 2, c: 3 }; for (const key in obj) { console.log(`${key}: ${obj[key]}`); // a: 1 // b: 2 // c: 3 } const arr = ['apple', 'banana', 'orange']; for (const index in arr) { console.log(index); // 0, 1, 2 (բանալիքներն այստեղ - ինդեքսներ) } -
for...of: Դիտարկում է արժեքները՝ տիրապետվող օբյեկտների, ինչպիսիք են զանգվածները, տողերը, Map, Set, TypedArray և արգումենտները։ Խորհուրդ է տրվում օգտագործել զանգվածների համար:const arr = ['apple', 'banana', 'orange']; for (const element of arr) { console.log(element); // apple // banana // orange } const str = "hello"; for (const char of str) { console.log(char); // h // e // l // l // o }
Համեմատության աղյուսակ:
| Ցիկլ | Նպատակը | Դիտարկվող տարրերը | Խորհուրդ է տրվում օգտագործել |
|---|---|---|---|
for |
Թվային տիրույթով անցում, կրկնություն | Նշված թիվը կամ սահմանը | Ընդհանուր ցիկլեր |
for...in |
Բանալիքների (գույքագրելի հատկությունների) անցում | Բանալիքներ (գույքագրելի հատկություններ) | Օբյեկտներ |
for...of |
Արժեքների անցում տիրապետվող օբյեկտների վրա | Արժեքները | Զանգվածներ, տողեր, Map, Set |