Skip to content

Instantly share code, notes, and snippets.

@robbestad
Last active May 18, 2021 01:29
Show Gist options
  • Select an option

  • Save robbestad/b765b291c63c95a8f97e067bb0819af8 to your computer and use it in GitHub Desktop.

Select an option

Save robbestad/b765b291c63c95a8f97e067bb0819af8 to your computer and use it in GitHub Desktop.
// En enkel timeout som fullfører etter ca 1500 millisekunder
// Merk at vi nå gir tilbake en resolve eller en reject
// helt tilfeldig
function executor(resolve, reject) {
setTimeout(() => {
Math.floor(Math.random() * 2) ?
resolve('Hallo verden :)') :
reject('Å nei :( En feil har oppstått')
}, 500);
}
// Ferdig-callbacket for vår promise-funksjon.
function done(value) {
console.log(value)
}
// Vårt error-callback
function error(value) {
console.error(value)
}
// Her oppretter vi vår promise, som vil kalle på executor-
// funksjonen. Når den er ferdig logger den hvor lang tid
// det tok før funksjonen fullførte
// Merk at denne gangen kjører vi ikke promise.then(), men
// promise.catch()
const promise = new Promise(executor);
promise.then(done).catch(error);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment