How many Types of Loops in JavaScript

JavaScript has several types of loops for repeating code. Here are the main ones:
1. for Loop
The most traditional loop. Runs a block of code a specific number of times.
javascript
for (let i = 0; i < 5; i++) {
console.log(i); // 0, 1, 2, 3, 4
}
// With array
const fruits = ["Apple", "Banana", "Orange"];
for (let i = 0; i < fruits.length; i++) {
console.log(fruits[i]);
}JavaScript2. while Loop
Repeats while a condition is true.
javascript
let count = 0;
while (count < 3) {
console.log(count); // 0, 1, 2
count++;
}JavaScript3. do...while Loop
Executes at least once, then repeats while condition is true.
javascript
let num = 0;
do {
console.log(num); // 0, 1, 2
num++;
} while (num < 3);JavaScript4. for...in Loop
Iterates over object properties (or array indices).
javascript
const person = { name: "John", age: 30, city: "NYC" };
for (let key in person) {
console.log(key + ": " + person[key]);
}
// Output: name: John, age: 30, city: NYC
// For arrays (gets index)
const colors = ["red", "green", "blue"];
for (let index in colors) {
console.log(index); // 0, 1, 2
}JavaScript5. for...of Loop
Iterates over array values directly (not indices).
javascript
const numbers = [10, 20, 30];
for (let num of numbers) {
console.log(num); // 10, 20, 30
}
// Works with strings too
for (let char of "Hello") {
console.log(char); // H, e, l, l, o
}JavaScript6. forEach() Method
Calls a function for each element in an array.
javascript
const items = ["A", "B", "C"];
items.forEach(function(item, index) {
console.log(index + ": " + item);
});
// 0: A, 1: B, 2: C
// Using arrow function
items.forEach((item) => console.log(item));JavaScript7. map() Method
Transforms array elements and returns a new array.
javascript
const nums = [1, 2, 3];
const doubled = nums.map(num => num * 2);
console.log(doubled); // [2, 4, 6]JavaScript8. filter() Method
Creates new array with elements that pass a condition.
javascript
const scores = [45, 78, 90, 32, 88];
const passing = scores.filter(score => score >= 50);
console.log(passing); // [78, 90, 88]JavaScript9. reduce() Method
Reduces array to a single value by applying a function.
javascript
const prices = [10, 20, 30];
const total = prices.reduce((sum, price) => sum + price, 0);
console.log(total); // 60JavaScript10. some() Method
Returns true if at least one element passes a condition.
javascript
const ages = [12, 18, 25];
const hasAdult = ages.some(age => age >= 18);
console.log(hasAdult); // trueJavaScript11. every() Method
Returns true if all elements pass a condition.
javascript
const grades = [85, 92, 88];
const allPassing = grades.every(grade => grade >= 70);
console.log(allPassing); // trueJavaScriptQuick Comparison
| Loop Type | Best For | Returns |
| for | Known iterations | N/A |
| while | Unknown iterations | N/A |
| do…while | At least once needed | N/A |
| for…in | Object properties | N/A |
| for…of | Array values | N/A |
| forEach | Simple iteration | N/A |
| map | Transform data | New array |
| filter | Select elements | New array |
| reduce | Combine values | Single value |
Choose the loop based on your needs—for arrays, for...of and array methods are typically preferred over for...in.


