Javascript-map()과 forEach()

최정민·2021년 7월 12일
0

JavaScript

목록 보기
7/9
post-thumbnail

map 메소드 forEach 메소드

  • forEach()는 배열 요소마다 한 번씩 주어진 함수(콜백)를 실행한다.
  • map()은 배열 내의 모든 요소 각각에 대하여 주어진 함수(콜백)를 호출한 결과를 모아 새로운 배열을 반환한다.
  • 두 함수 모두 3개의 인자를 가지고 호출된다.
    1. currentValue (배열 원소의 값)
    2. index (현재 요소의 인덱스)
    3. array (현재 배열)

1.map()

var new_array = arr.map(function callback(currentValue[,index[,array]])// new_array 새 요소 반환
배열 내의 모든 요소 각각에 대하여 주어진 함수(콜백)를 호출한 결과를 모아 새로운 배열을 반환한다.

let fruit= ['lemon', 'mango', 'peach'];
var new_array = fruit.map(function (currentVal,index,array) {
  return currentVal+" index: "+index;
})
console.log (new_array)
console.log(fruit)

결과 👇🏻
[ 'lemon index: 0', 'mango index: 1', 'peach index: 2' ]

[ 'lemon', 'mango', 'peach' ] //원래의 배열은 바뀌지 않는다.

2.forEach()

var new_array = arr.map(function callback(currentValue[,index[,array]])// new_array 새 요소 반환
배열 요소마다 한 번씩 주어진 함수(콜백)를 실행만하고 반환하지않는다.

let fruit= ['lemon', 'mango', 'peach'];
fruit.forEach((currentVal,index,array) => 
             {return fruit[index] = currentVal+" index: "+index;;})
console.log(fruit)

결과 👇🏻
[ 'lemon index: 0', 'mango index: 1', 'peach index: 2' ]

주어진 함수를 배열의 요소가 인자로 들어가여 실행만한다.

let num1 = []
let num =[1,2,3,4]
num.forEach(x=>{num1.push(x+3)})
console.log(num)
console.log(num1)

결과 👇🏻
[ 1, 2, 3, 4 ]

[ 4, 5, 6, 7 ]

profile
나 다운 것, 가장 아름다운 것

0개의 댓글