JavaScript > JavaScript Fundamentals > Control Structures > for loops
Basic For Loop: Iterating and Summing
This JavaScript code snippet demonstrates a fundamental use of the for loop: iterating through an array of numbers and calculating their sum. It showcases the initialization, condition, and increment/decrement components of the loop.
Code Example
This code initializes an array named numbers and a variable sum. The for loop iterates from index 0 to the last index of the array (numbers.length - 1). In each iteration, the current element of the array (numbers[i]) is added to the sum variable. Finally, the calculated sum is printed to the console.
// Sample array of numbers
const numbers = [1, 2, 3, 4, 5];
// Initialize a variable to store the sum
let sum = 0;
// Iterate through the array using a for loop
for (let i = 0; i < numbers.length; i++) {
  // Add the current number to the sum
  sum += numbers[i];
}
// Output the sum
console.log("The sum of the numbers is: " + sum); // Output: The sum of the numbers is: 15Concepts Behind the Snippet
The for loop is a fundamental control flow statement in JavaScript. It allows you to repeatedly execute a block of code a specific number of times.  It consists of three parts within the parentheses, separated by semicolons:
1.  Initialization: This is executed only once before the loop starts.  Typically, it's used to declare and initialize a counter variable (e.g., let i = 0).
2.  Condition: This is evaluated before each iteration. If the condition is true, the loop body is executed. If it's false, the loop terminates (e.g., i < numbers.length).
3.  Increment/Decrement: This is executed after each iteration. Typically, it's used to update the counter variable (e.g., i++).
Real-Life Use Case
Imagine you have a list of products in an e-commerce application, and you want to calculate the total price of all items in the shopping cart.  You can use a for loop to iterate through the product list and sum up the prices of each item.
Best Practices
index instead of i if it represents an index).const when possible: If the loop counter variable doesn't need to be reassigned within the loop body, declare it using const instead of let.
Interview Tip
Be prepared to explain the purpose of each part of the for loop: initialization, condition, and increment/decrement. Also, understand the potential performance implications of using a for loop versus other iteration methods (e.g., forEach, map, filter).  Know when a for loop is most appropriate.
When to Use Them
Use for loops when you need to iterate a specific number of times, or when you need to access the index of each element in an array. They are particularly useful when you need fine-grained control over the iteration process.
Memory Footprint
The memory footprint of a for loop is generally small. It primarily involves the memory used by the loop counter variable and any variables declared within the loop body.  Compared to methods like map which create new arrays, for loops are often more memory efficient when simply iterating to perform actions.
Alternatives
Alternatives to the for loop include:
forEach:  A method available on arrays that iterates over each element.  It's useful when you don't need the index.map: Creates a new array by applying a function to each element of the original array.filter: Creates a new array containing only the elements that satisfy a given condition.for...of loop:  Iterates over the values of an iterable object (e.g., array, string, map, set).for...in loop: Iterates over the properties of an object (less common for arrays).while and do...while loops: Useful when the number of iterations is not known in advance.
Pros
Cons
FAQ
- 
                        What happens if the condition in aforloop is always true?
 If the condition is always true, the loop will run indefinitely, creating an infinite loop. This can crash your browser or application. Make sure the condition will eventually evaluate tofalseto terminate the loop.
- 
                        Can I usebreakandcontinuestatements inside aforloop?
 Yes, you can usebreakto exit the loop prematurely, andcontinueto skip the current iteration and proceed to the next.
- 
                        How do I iterate through an array in reverse order using aforloop?
 You can iterate in reverse order by initializing the loop counter to the last index of the array, setting the condition to check if the counter is greater than or equal to 0, and decrementing the counter in each iteration:for (let i = numbers.length - 1; i >= 0; i--) { ... }
