JavaScript-এ for লুপের দুটি মূল ভেরিয়েশন রয়েছে। এছাড়া ES6-এ for...of লুপ যোগ হয়েছে যা অ্যারে ইটারেশনের জন্য সেরা।
১. ক্লাসিক for লুপ (init; condition; expression)

for (let step = 0; step < 5; step++) {
console.log('Taking step ' + step);
}
// আউটপুট: Taking step 0, Taking step 1, ..., Taking step 4
২. for...in লুপ (অবজেক্টের প্রপার্টি ইটারেট)
এনামারেবল প্রপার্টি গুলোর মাধ্যমে ইটারেট করে। অ্যারে için সুপারিশ করা হয় না।
let person = { name: "John", age: 35 };
for (let prop in person) {
console.log(prop, person[prop]); // সঠিক: person[prop]
}
// আউটপুট: name John, age 35
নোট: মূল কোডে a[prop] ভুল লেখা হয়েছে, সঠিক person[prop]।
৩. for...of লুপ (ES6+) - অ্যারে/ইটেরেবলের জন্য সেরা
let arr = ['a', 'b', 'c'];
for (let value of arr) {
console.log(value); // a, b, c
}
// ইনডেক্স ও মান দুটোই দরকার হলে
for (let [index, value] of arr.entries()) {
console.log(index, value);
}
তুলনা সারণী
| লুপ টাইপ | উপযোগী | ইনডেক্স এক্সেস |
|---|---|---|
| Classic for | সংখ্যা রেঞ্জ, জটিল লজিক | হ্যাঁ |
| for...in | অবজেক্ট প্রপার্টি | হ্যাঁ (কি হিসেবে) |
| for...of | অ্যারে, স্ট্রিং, Map, Set | entries() দিয়ে |
| forEach | সিম্পল অ্যারে ইটারেশন | দ্বিতীয় প্যারামিটার |