🎈 내가 생각한 방법
반복문 돌려서 배열의 원소 *2 한 다음 결과값 반환하기
-> 이 방법이 뭔가 이상해서 배열 아이템 대체 등등 찾아보다가 새로운 push pop 등등은 기존 배열을 수정한다는 사실을 떠올렸다. 그래서 그럼 새로운 배열을 만들어내는 애들은 뭐였지..? 하고 찾아보니 map 이 있었다!
그래서 map 을 이용해보았는데,,,
결과는 널널널널... 뭐가 잘못된 것일까
아하.. 쓰는 방법이 틀렸던 것이였다.. ㅎㅎ
일반함수 모양으로 작성해보자면 이러한데, item * 2 앞의 return 을 넣지 않으면 널널널이 나온다.
왜 return 을 두 번 해줘야만 제대로 값이 나오는 것일까?...
item * 2 앞의 return 은 answer 이라는 배열으로 반환해주는 거고 return answer 의 return 은 배열 자체를 반환해주는건가?
🎈 배열의 메써드 map
map() 메서드는 배열 내의 모든 요소 각각에 대하여 주어진 함수를 호출한 결과를 모아 새로운 배열을 반환한다.
배열.map( callback ( currentValue, index, array ), thisArg )
callback 함수를 매개변수로 가지고, 이 콜백함수는 세 가지의 인수를 가진다.
1. currentValue : 처리할 현재 요소
2. index : 처리할 현재 요소의 인덱스
3. array : map()을 호출한 배열
4. thisArg : 콜백함수를 실행할 때 this 로 사용되는 값
'코딩테스트' 카테고리의 다른 글
코딩테스트 풀이 - 아이스 아메리카노 (0) | 2023.10.23 |
---|---|
코딩테스트 풀이 - 피자 나눠 먹기 (3) (1) | 2023.10.22 |
코딩테스트 풀이 - 피자 나눠 먹기(1) | 소수점 올림, 내림, 반올림, 버림 Math.ceil, floor, round, trunc (0) | 2023.10.13 |
코딩 테스트 풀이 - 문자열 뒤집기 | split, reverse, join (0) | 2023.10.12 |
코딩 테스트 풀이 - 배열 원소의 길이 | forEach 문, for of 문, map 이용해 풀기 (1) | 2023.10.12 |