陣列中的forEach和map的區別

2022-02-09 20:36:23 字數 925 閱讀 4043

大多數情況下,我們都要對陣列進行遍歷,然後經常用到的兩個方法就是foreach和map方法。

先來說說它們的共同點

map方法

1.map方法返回乙個新的陣列,陣列中的元素為原始陣列呼叫函式處理後的值。

2.map方法不會對空陣列進行檢測,map方法不會改變原始陣列。

3.瀏覽器支援:chrome、safari1.5+、opera都支援,ie9+,

array.map(function(item,index,arr){},thisvalue)

var arr = [0,2,4,6,8];

var str = arr.map(function(item,index,arr),this);

console.log(str);//[0,1,2,3,4]

若arr為空陣列,則map方法返回的也是乙個空陣列。

foreach方法

1.foreach方法用來呼叫陣列的每個元素,將元素傳給**函式

2.foreach對於空陣列是不會呼叫**函式的。

array.foreach(function(item,index,arr){},this)

var arr = [0,2,4,6,8];

var sum = 0;

var str = arr.foreach(function(item,index,arr),this)

console.log(sum);//20

console.log(str); //undefined

無論arr是不是空陣列,foreach返回的都是undefined。這個方法只是將陣列中的每一項作為callback的引數執行一次。

陣列的forEach和map和for方法的區別

一 定義 foreach 從頭到尾遍歷陣列,為每個元素呼叫指定的函式。map 將呼叫的陣列的每個元素傳遞給指定的函式,並返回乙個陣列,他包含該函式的返回值。傳遞的函式是 foreach map 的第乙個引數,該函式有三個引數 陣列的元素 item 元素的索引 index 陣列本身 input 第二個...

陣列的forEach方法和map方法

定義 foreach是給陣列的每乙個元素執行一次給定的函式 語法arr.foreach callback currentvalue index array thisarg 引數 callback 為每個元素執行的函式,該函式接收三個引數 currentvalue 陣列中正在處理的當前元素 index...

js中 forEach 和 map 區別

都是迴圈遍歷陣列中的每一項。foreach 和map 裡面每一次執行匿名函式都支援3個引數 陣列中的當前項item,當前項的索引index,原始陣列input。匿名函式中的this都是指window。只能遍歷陣列。1.foreach 沒有返回值,即返回值為undefined 理論上這個方法是沒有返回...