如果我有一個陣列并且我想呼叫 map() 到該陣列。從 map 回傳的結果是否會與陣列有不同的順序?
const array = [1,2,3,4,5,6,7,8,9];
const mappedArray = array.map((num) => {
return num * num;
})
console.log(mappedArray);
映射陣列將永遠是 [1,4,9,16,25,36,49,64,81] 或者它可能會更改為其他內容(不同的順序)?
如果我在地圖內進行如下 API 呼叫會怎樣
const mappedArray = array.map(async (num) => {
return await api(num);
})
// remote API
function api(num) {
return dynamoDbClient.getItem(num);
}
uj5u.com熱心網友回復:
不,map將始終按順序遍歷陣列。除非在代碼中的其他地方更改陣列,否則生成的陣列的順序不會改變。如果輸入相同,輸出將始終相同。
運行此代碼 1000 次,每次陣列都相同。
const array = [1,2,3,4,5,6,7,8,9];
const mappedArray = array.map((num) => {
return num * num;
})
console.log(mappedArray);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/342708.html
