🔁
Basics

Loops

for, while, for...of, for...in
💡 for...of ek "har item leke dikhao" instruction hai (jaise ek trolley se har fruit uthaना), for...in "har key/label dikhao" hai (jaise dictionary ke saare words list karna).

Traditional for (i=0; i<n; i++) index-based loop. while condition true tak repeat. for...of arrays/strings ke actual VALUES par iterate karta hai (modern, clean). for...in object KEYS (property names) par iterate karta hai.

for (let i = 0; i < 5; i++) {
  console.log(i);   // 0 1 2 3 4
}

const fruits = ["apple", "banana", "cherry"];
for (const fruit of fruits) {   // values directly
  console.log(fruit);
}

const person = { name: "Aarav", age: 20 };
for (const key in person) {   // keys (property names)
  console.log(key, person[key]);
}

let count = 0;
while (count < 3) {
  console.log(count);
  count++;
}
🔁
for...of ek "har item leke dikhao" instruction hai (jaise ek trolley se har fruit uthaना), for...in "har key/label dikhao" hai (jaise dictionary ke saare words list karna).
1 / 2
⚡ Quick Recap
  • for...of = values (arrays/strings), for...in = keys (objects)
  • Traditional for = index-based control chahiye ho to
  • for...in arrays ke liye avoid karo — for...of use karo
Is page mein (2 subtopics)

break loop ko poori tarah rok deta hai. continue sirf CURRENT iteration skip karta hai, loop continue rehta hai — C/Java jaise hi concepts.

for (let i = 0; i < 10; i++) {
  if (i === 3) continue;   // 3 skip karo, aage badho
  if (i === 6) break;        // 6 par poori tarah ruk jao
  console.log(i);              // 0 1 2 4 5
}
💡Tip: forEach() (array method) ke andar break/continue KAAM NAHI karte — agar early-exit chahiye, traditional for loop ya for...of use karo, forEach() nahi.

Labels (rare, lekin useful) outer loop ko directly break/continue karne dete hain jab tum nested loop ke andar ho — bina extra flag variables ke.

outerLoop: for (let i = 0; i < 3; i++) {
  for (let j = 0; j < 3; j++) {
    if (j === 1) continue outerLoop;   // OUTER loop continue, inner nahi
    console.log(i, j);
  }
}
💡Tip: Labeled loops rarely everyday code mein zaroori hain — usually complex nested-loop logic ko function mein extract karke early return use karna cleaner hota hai.