[英]Is async-await only used with promises?
我正在使用 javascript。
我的問題來自這種情況:我有一個正在映射的大型數組,
let myNewArray = myLargeArray.map(someFuntion)
console.log(myNewArray)
映射是否可能花費太長時間並且可能會記錄undefined
的內容? 那么我應該使用 async-await 還是只為 promise 保留?
映射是否可能需要太長時間
“太長”是主觀的。 不過,花費的時間不會對您最終獲得的價值產生任何影響。
那個未定義的可能會被記錄?
map
總是返回一個數組,所以沒有。
該數組可能包含未定義的值。
那么我應該使用 async-await 還是只為 promise 保留?
您只能等待 promise。
map
將返回一個數組,因此您無法等待它。
If someFunction
returns a promise, then the map
will return an array of promises, which you could wrap with Promise.all
which returns a promise that you could await if you wanted to log an array of resolved values instead of an array of promises.
Map 是同步的。
它接受回調 function (someFuntion)
並始終創建一個新數組。
回調 function (someFuntion)
不是事件驅動的。
它按順序應用於數組中的每個元素。
您將始終收到一個數組而不是未定義的。 但返回數組中的值將取決於您提供給 map 的回調 function。
如果someFuntion
什么都不返回,你將得到未定義的數組。
如果返回 promise 則 promise 數組可以解析。 Promise.all
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.