async awaitについて
更新日 2023-08-09 13:38:49
javascript
asyncとは
・非同期関数を定義するasync functionは何をするか
・Promiseを返す←※重要 ・async functionが値をreturnした場合、Promiseは戻り値をresolveする。←※重要 ・async functionが例外や何らかの値をthrowした場合はその値をrejectする。
let promise = async function(value) { // asyncはPromiseを返す
for (i = 0; i < 10000000; i++) {};
// return は resolveすることになる
return value * 2;
};
(async function() {
let a1 = await promise(1); // awaitすることで、Promiseオブジェクトではなく、resolveした値が返されるようになる
let a2 = await promose(2);
})();
ajaxとasync await
let doAjax = async function(url, postData, csrf) {
return await $.ajax({ // ajaxはPromiseを返すがawaitしてるのでresolveした値が返されるようになる
url : url,
data : postData,
});
};