es6的map和forEach

forEach 僅遍歷數組,對該數組沒做任何的改變,且返回undefined。

var array1 = [1,2,3,4,5];
 
var x = array1.forEach(function(value,index){
      ++value;  //return ++value;還是一樣的效果
});
console.log(x);   //undefined
console.log(array1); //[1,2,3,4,5]

map 方法創建一個新數組,其結果是該數組中的每個元素都調用一個提供的函數後返回的結果。不改變原數組,返回一個新數組。返回值是一個新的數組;

var array1 = [1,2,3,4,5];
 
var y = array1.map(function(value,index){
     return ++value;
});
console.log(y);   //[2,3,4,5,6]
console.log(array1)   //[1,2,3,4,5]

如果想在forEach下改變遍歷的數組也是可以的。

var array1 = [1,2,3,4,5];
array1.forEach((value,index,arr)=>(
	           arr[index] ++
	           ));
console.log(array1)  //[2,3,4,5,6]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章