map() 方法

做用:

map() 方法返回一個新數組,數組中的元素爲原始數組元素調用函數處理後的值

語法:

array.map(function(currentValue,index,arr), thisValue)
  • currentValue,必填,當前元素的值
  • index,可選,當前元素在數組中的索引值
  • arr可選,當前元素屬於的數組對象
  • thisValue,可選,對象做爲該執行回調時使用,傳遞給函數,用做 "this" 的值。若是省略了 thisValue,或者傳入 null、undefined,那麼回調函數的 this 爲全局對象。

注意:map() 不會對空數組進行檢測。
注意:map() 不會改變原始數組。數組

var elements = [
  'Hydrogen',
  'Helium',
  'Lithium',
  'Beryllium'
];
elements.map(function(element) { 
  return element.length; 
}); // 返回數組:[8, 6, 7, 9]

// 上面的普通函數能夠改寫成以下的箭頭函數
elements.map((element) => {
  return element.length;
}); // [8, 6, 7, 9]

// 當箭頭函數只有一個參數時,能夠省略參數的圓括號
elements.map(element => {
 return element.length;
}); // [8, 6, 7, 9]

// 當箭頭函數的函數體只有一個 `return` 語句時,能夠省略 `return` 關鍵字和方法體的花括號
elements.map(element => element.length); // [8, 6, 7, 9]

// 在這個例子中,由於咱們只須要 `length` 屬性,因此能夠使用參數解構
// 須要注意的是字符串 `"length"` 是咱們想要得到的屬性的名稱,而 `lengthFooBArX` 則只是個變量名,
// 能夠替換成任意合法的變量名
elements.map(({ "length": lengthFooBArX }) => lengthFooBArX); // [8, 6, 7, 9]
相關文章
相關標籤/搜索