mirror of https://github.com/xfarrow/blink.git
26 lines
764 B
JavaScript
26 lines
764 B
JavaScript
// https://javascript.info/async-await
|
||
|
||
// A async function always returns a promise. Other values are wrapped in a resolved promise automatically.
|
||
|
||
async function f1() {
|
||
return 1;
|
||
}
|
||
|
||
f1().then(console.log); // 1
|
||
|
||
// The keyword await makes JavaScript wait until that promise settles and returns its result.
|
||
// It can be used in async functions only
|
||
// Let’s emphasize: await literally suspends the function execution until the promise settles,
|
||
// and then resumes it with the promise result.
|
||
async function f2() {
|
||
|
||
let promise = new Promise((resolve, reject) => {
|
||
setTimeout(() => resolve("done!"), 1000)
|
||
});
|
||
|
||
let result = await promise; // wait until the promise resolves (*)
|
||
|
||
console.log(result); // "done!"
|
||
}
|
||
|
||
f2(); |