定義map陣列_JavaScript中Array.map方法的使用和陷阱
阿新 • • 發佈:2021-01-23
技術標籤:定義map陣列
定義和用法
map() 方法返回一個新陣列,陣列中的元素為原始陣列元素呼叫函式處理後的值。
map() 方法按照原始陣列元素順序依次處理元素。
語法:array.map (function(value,index,array){return ...})
value:必須。當前元素的值
index:可選。當前元素的索引值
array:可選。當前元素屬於的陣列物件
例項:
var arr = [1, 2, 3, 4, 5]; var sds = arr.map(function(value, index, array) { return value * 2 }) console.log(sds)//2, 4, 6, 8, 10
陷阱
Array.map
方法有助於迭代陣列元素。通過以正確的順序對其進行一次迭代,它還有助於操縱元素。
但Array.map
僅適用於預填充陣列。它不會遍歷空陣列。例如:
const arr = new Array(6);
arr.map((value,index) => {
console.log('empty array ->', value); // This will never get consoled
return value;
});
console.log(arr);
這裡如果說你想要的建立一個可迭代的空陣列,可以使用 Array.fill 來填充它。
const arr = new Array(3).fill(null);
arr.map((value, index) => {
console.log('prefilled index ->', index); // This gets consoled
return value;
});