Skip to content

Instantly share code, notes, and snippets.

@lexeek
Created April 2, 2019 22:30
Show Gist options
  • Save lexeek/49bc1f0657d45eced5db188dd47a42c8 to your computer and use it in GitHub Desktop.
Save lexeek/49bc1f0657d45eced5db188dd47a42c8 to your computer and use it in GitHub Desktop.
Iterated Object ( Symbol.iterator )
const collection = {
a: 10,
b: 20,
c: 30,
[Symbol.iterator]: function * () {
for (let key in this) {
yield this[key];
}
}
};
const iterator = collection[Symbol.iterator]();
console.log(iterator.next()); // → {value: 10, done: false}
console.log(iterator.next()); // → {value: 20, done: false}
console.log(iterator.next()); // → {value: 30, done: false}
console.log(iterator.next()); // → {value: undefined, done: true}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment