[英]Async Await Default behaviour
如果您具有異步功能並具有await語句。 它在Mozilla文檔中指出:“如果await運算符后面的表達式的值不是Promise,它將轉換為已解析的Promise。” 無論如何,有沒有要重寫的方法,即從表達式或空對象返回false來表示所有未按計划進行-還是必須將stringify功能包裝在promise語句中?
async function sortOutString(string) {
const result = await stringify(string);
return result;
}
function stringify(str) = {
try {
const obj = JSON.parse(str);
return obj;
} catch (e) {
return e;
}
};
不,您不必使用任何Promise,也不必使用async
/ await
。 您似乎在尋找
function sortOutString(string) {
try {
const result = stringify(string);
return result;
} catch(err) {
return false; // or an empty object, or whatever you want
// ^^^^^^ to indicate that not all did go as planned
}
}
function stringify(str) {
const obj = JSON.parse(str);
return obj;
}
以前,您正在返回err
對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.