지금 concat에 대해 글을 쓰는 이유는....다시는 이런 실수를 하지 않기 위함이다...
아무 생각 없이 concat을 사용해 문제를 풀다가 풀리지 않아 잠깐의 시간을 허비하게 되었다...
문제는 함수와 배열을 입력받아 배열의 각 요소에 함수가 적용된 새로운 배열을 리턴하는 문제였다...
function mapCallback(func, arr) { // TODO: 여기에 코드를 작성합니다. let newArr = []; // for(let i = 0; i < arr.length; i++) { // newArr.concat(func(arr[i])) // } for(let item of arr) { newArr.push(func(item)) } return newArr; }
주석 부분의 concat.... newArr에 아무리 concat을 해 봐도 초기값인 빈 배열만 [] 뱉어낸다....
당연했다...concat은 기존 배열을 변경하지 않기 때문이다.....반성한다......
정 concat을 사용해야 겠다면.... newArr = newArr.concat(func(item)) 이렇게 재 할당 하는게..
암튼 오늘도 나는 조금 더 성장했다....