陣列的forEach方法和map方法

2022-06-14 20:00:16 字數 1525 閱讀 5995

定義:foreach是給陣列的每乙個元素執行一次給定的函式

語法

arr.foreach(callback(currentvalue [, index [, array]])[, thisarg])
引數

callback

為每個元素執行的函式,該函式接收三個引數

currentvalue

陣列中正在處理的當前元素

index

陣列中正在處理的當前元素的索引

array

函式正在操作的陣列

thisarg

可選引數,當執行callback時,用作this的值

例子

var thisarg = 

var arr = [1,2,34,56,665,434];

arr.foreach(function(item,index,arrvalue),thisarg)

執行結果

從上面結果中,我們可以發現,使用foreach遍歷陣列,可以給foreach傳乙個函式,該函式是當前元素執行的函式,它接收三個引數分別是陣列的當前執行元素的值,當前執行元素的索引,foreach的第二個引數就是在函式中的上下文 this的指向,函式的foreach沒有返回值

,同時,執行了callback函式後,原陣列也不會發生改變

定義:map方法返回乙個新陣列,新陣列的值為原始陣列呼叫函式處理後的值

map方法陣列按照原始陣列元素順序依次處理元素

map方法不會處理空陣列

map方法不會改變原始陣列

語法
array.map(function(currentvalue,index,arr), thisvalue)
引數說明

function(currentvalue, index,arr)

陣列中每個元素都會執行的函式,其中函式的引數

currentvalue:當前執行函式的陣列元素

index:當前執行函式的陣列元素的索引

arr:當前被操作的陣列

thisvalue

用作執行函式的上下文,未定型或者沒傳,為window

例子

var newarr = arr.map(function(item,index,arrvalue),thisarg)

console.log(newarr)

console.log(arr)

執行結果

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

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

陣列遍歷的方法 For Each迴圈和索引遍歷

for each迴圈是jdk1.5引進的一種新的迴圈型別,又被稱為加強型迴圈,它能在不使用索引的情況下遍歷陣列。語法格式 for type element array 例項 需求 遍歷陣列arr中的所有元素 public class testsrray for int element arr 上述編...

js keys方法和foreach方法區別

keys和foreach都有遍歷物件的功能,但他們可以遍歷的物件型別是不一樣的,foreach是陣列物件的方法,而keys是object物件的方法。換句話說,foreach只能陣列物件使用,而keys任何物件都能使用。1.object.keys 其實從字面我們就可以看出來keys代表的是鍵值對中的鍵...