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 = ['ябълка', 'банан', 'портокал']; for (const index in arr) { console.log(index); // 0, 1, 2 (ключовете в този случай са индексите) } -
for...of: Обхожда стойностите на итерируеми обекти като масиви, низове, Map, Set, TypedArray и аргументи. Препоръчва се за итерация по масиви.const arr = ['ябълка', 'банан', 'портокал']; for (const element of arr) { console.log(element); // ябълка // банан // портокал } const str = "здравей"; for (const char of str) { console.log(char); // з // д // р // а // в // е // й }
Таблица за сравнение:
| Цикъл | Назначение | Обхванати елементи | Препоръчително за |
|---|---|---|---|
for |
Итерация по числов диапазон, повторение | Определен брой пъти | Общи цикли |
for...in |
Обхождане на ключове (свойства) на обекти | Ключове (свойства) | Обекти |
for...of |
Обхождане на стойностите на итерируеми обекти | Стойности | Масиви, низове, Map, Set |