Skip to content

Instantly share code, notes, and snippets.

@caitp
Created March 21, 2017 13:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save caitp/714c2ad149bb44a9a14edb0fe9c18a04 to your computer and use it in GitHub Desktop.
Save caitp/714c2ad149bb44a9a14edb0fe9c18a04 to your computer and use it in GitHub Desktop.
let caps = [];
async function* SpeedRacer() {
yield new Promise(function(resolve, reject) {
caps.push({ resolve, reject });
});
yield new Promise(function(resolve, reject) {
caps.push({ resolve, reject });
});
}
let it = SpeedRacer();
it.next().then(({ value, done }) => {
console.log(`Yield #1 is done!: { value: ${value}, done: ${done} }`);
});
it.next().then(({ value, done }) => {
console.log(`Yield #2 is done!: { value: ${value}, done: ${done} }`);
});
caps[1].resolve("Number2");
caps[0].resolve("Number1");
// If resolved in this order, should log:
// `Yield #2 is done!: { value: Number2, done: false }`
// `Yield #1 is done!: { value: Number1, done: false }`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment