For Loop

for حلقه‌ای است که برای اجرای مکرر یک بلوک کد استفاده می‌شود، زمانی که تعداد تکرار مشخص است یا می‌دانیم چه مقدار باید تکرار شود.

🔹 ساختار کلی

for (initialization; condition; increment) { // بلوک کد }
  • initialization → مقداردهی اولیه متغیر شمارنده (مثلاً let i = 0)

  • condition → شرط ادامه حلقه (مثلاً i < 5)

  • increment → بروزرسانی شمارنده (مثلاً i++)

🔹 مثال ساده

for (let i = 0; i < 5; i++) { console.log("شماره:", i); } // خروجی: 0, 1, 2, 3, 4

🔹 توضیح مرحله به مرحله

  1. initialization اجرا می‌شود یک بار قبل از شروع حلقه.

  2. condition بررسی می‌شود. اگر true باشد، بلوک کد اجرا می‌شود.

  3. بعد از اجرای بلوک، increment انجام می‌شود.

  4. دوباره شرط بررسی می‌شود.

🔹 تغییر مقدار شمارنده

می‌توان شمارنده را هرچقدر خواستیم تغییر داد، نه فقط با i++.

for (let i = 0; i <= 10; i += 2) { console.log(i); } // خروجی: 0, 2, 4, 6, 8, 10

🔹 حلقه با مقدار منفی

for (let i = 5; i > 0; i--) { console.log(i); } // خروجی: 5, 4, 3, 2, 1

🔹 حلقه تو در تو (Nested For Loop)

for (let i = 1; i <= 3; i++) { for (let j = 1; j <= 2; j++) { console.log(`i=${i}, j=${j}`); } } /* خروجی: i=1, j=1 i=1, j=2 i=2, j=1 i=2, j=2 i=3, j=1 i=3, j=2 */

🔹 استفاده از break و continue

break → خروج از حلقه

for (let i = 0; i < 5; i++) { if (i === 3) break; console.log(i); } // خروجی: 0,1,2

continue → پرش به تکرار بعدی

for (let i = 0; i < 5; i++) { if (i === 3) continue; console.log(i); } // خروجی: 0,1,2,4

🎯 تمرین عملی در HTML

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>JavaScript For Loop</title> </head> <body> <h2>JavaScript For Loop</h2> <pre id="output"></pre> <script> const out = document.getElementById("output"); // مثال ساده for (let i = 0; i < 5; i++) { out.innerText += "for: " + i + "\n"; } // حلقه با مقدار دو برابر for (let i = 0; i <= 10; i += 2) { out.innerText += "for with step 2: " + i + "\n"; } // حلقه معکوس for (let i = 5; i > 0; i--) { out.innerText += "reverse: " + i + "\n"; } // حلقه تو در تو for (let i = 1; i <= 3; i++) { for (let j = 1; j <= 2; j++) { out.innerText += `nested: i=${i}, j=${j}\n`; } } </script> </body> </html>

📌 جمع‌بندی

  • for مناسب وقتی تعداد تکرار مشخص است.

  • سه بخش اصلی: initialization, condition, increment/decrement

  • می‌توان از break و continue برای کنترل جریان استفاده کرد.

  • حلقه تو در تو برای پیمایش داده‌های پیچیده (مثل ماتریس‌ها) کاربرد دارد.