Node.js/async & await
☝️ async/await
asyncとawaitはいくつかの特殊な文法と見なすことができ、promiseを基本的に便利に使用することができ、より簡潔に1回減らすことができる.
💡 async
💡 await
💻 Example
今は簡単に説明するだけですが、これから直接ログ人気を実現したり、CRUDシステムを実施したり、もっと多くの使用をしたりします.新しいものが現れたら、追加の説明をします.
ソース
Node.教科書
MDN Web docs
asyncとawaitはいくつかの特殊な文法と見なすことができ、promiseを基本的に便利に使用することができ、より簡潔に1回減らすことができる.
💡 async
async function() {
return 0;
}
//또는
async () => {
return 0;
}
前述したように、function
の前にasyncを付けてもよいし、화살표 함수
の前にasyncを付けてasyncを用いてもよく、この関数は常にpromisを返す.💡 await
const promise = await promise
JAvascriptのデフォルトでは、await
に遭遇した場合、処理プロセスが待機します.簡単に言えば、await
を有するコードは、プロセスが非待機状態にある場合にのみ実行される.💻 Example
function findAndSaveUser(Users) {
Users.findOne({})
.then((user) => {
user.name = 'asdf';
return user.save();
})
.then((user) => {
return Users.findOne({ gender: 'm'})
})
.then((user) => {
// 생략
})
.catch(err => {
console.error(err);
})
}
上のコードはawait/async構文を使用していないコールバック関数コードです.上記のコードはawait/async構文で置き換えることができます.async function findAndSaveUser(Users) {
let user = await Users.findOne({})
user.name = 'asdf'
user = await user.save();
user = await Users.findOne({ gender : 'm'})
// 생략
}
コールバックを変更することで、コードが確かに短くなっていることがわかり、便利に見えます.関数宣言子の前にasyncを追加し、Users.findOne()
の前に待機を追加し、プロセスの解決を待ってからスキップします.今は簡単に説明するだけですが、これから直接ログ人気を実現したり、CRUDシステムを実施したり、もっと多くの使用をしたりします.新しいものが現れたら、追加の説明をします.
ソース
Node.教科書
MDN Web docs
Reference
この問題について(Node.js/async & await), 我々は、より多くの情報をここで見つけました https://velog.io/@raonlast/Node.js-async-awaitテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol