Junior
JavaScript-ში რა ტიპის for ციკლებს იცნობთ?
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 |