# What are the ways we can break out of a loop in JavaScript?

> Learn the ways to break out of a loop in JavaScript using the break keyword in for, for..of and while loops, plus why continue and for..in differ.

Author: [Flavio Copes](https://flaviocopes.com/about/) | Published: 2020-06-13 | Topics: [JavaScript](https://flaviocopes.com/tags/js/) | Canonical: https://flaviocopes.com/javascript-break-loop/

Here is a for loop:

```js
const list = ['a', 'b', 'c']
for (let i = 0; i < list.length; i++) {

}
```

We can break at any point in time the execution using the `break` keyword:

```js
const list = ['a', 'b', 'c']
for (let i = 0; i < list.length; i++) {
  if (list[i] === 'b') break
  console.log(list[i])
}
```

`break` also works in for..of loops:

```js
const list = ['a', 'b', 'c']
for (const item of list) {
  if (item === 'b') break
  console.log(item)
}
```

And in while:

```js
const list = ['a', 'b', 'c']
let i = 0
while (i < list.length) {
  if (i === 'b') break
  console.log(list[i])
  i++
}
```

The `continue` keyword lets us skip one iteration, in the `for` and `for..of` and `while` loops. The loop does end that iteration, and will continue from the next one.

A `for..in` loop can't use break. It's not possible to end it in this way.
