profileRyan KesPGP keyI build stuffEmailGithubTwitterLast.fmMastodonMatrix

JavaScript Iterator

Introduction

An iterator is a pointer for traversing the elements of a data structure.

Examples

Syntax

const iterable = ["a", "b"]
const iterator = iterable[Symbol.iterator]()

console.log(iterator.next()) // { value: 'a', done: false }
console.log(iterator.next()) // { value: 'b', done: false }
console.log(iterator.next()) // { value: undefined, done: true }

TypeScript Interfaces

Expressed as interfaces in TypeScript notation:

interface Iterable {
  [Symbol.iterator](): Iterator
}
interface Iterator {
  next(): IteratorResult
}
interface IteratorResult {
  value: any
  done: boolean
}