The JavaScript for..of loop
New Course Coming Soon:
Get Really Good at Git
The for...of
loop is my favorite way to loop in JavaScript.
It combines the conciseness of forEach
loops with the ability to break.
The syntax is this:
const list = ['a', 'b', 'c']
for (const item of list) {
console.log(item)
}
You can break at any point in time using break
:
const list = ['a', 'b', 'c']
for (const item of list) {
console.log(item)
if (item === 'b') break
}
You can skip an iteration using continue
:
const list = ['a', 'b', 'c']
for (const item of list) {
if (item === 'b') continue
console.log(item)
}
You can get the index of an iteration using entries()
:
const list = ['a', 'b', 'c']
for (const [index, value] of list.entries()) {
console.log(index) //index
console.log(value) //value
}
Notice the use of const
. The for..of
loop creates a new scope in every iteration, so we can safely use that instead of let
.
→ Get my JavaScript Beginner's Handbook
→ Read my
JavaScript Tutorials
on The Valley of Code
→ Read my
TypeScript Tutorial
on The Valley of Code
Here is how can I help you:
- COURSES where I teach everything I know
- CODING BOOTCAMP cohort course - next edition in 2025
- BOOKS 16 coding ebooks you can download for free on JS Python C PHP and lots more
- Follow me on X