코드 변환(고차함수)
const filterMaped = arr.filter(x => x % 2 !== 0).map(x => x * 2); console.log(filterMaped) // [2, 6, 10]
arr.filter(x => x % 2 !== 0)
filter에서는 2로 나누어진 값을 제외시킨다 즉 홀수만 받는다.
map(x => x * 2)
map에서는 받은 수들을 2씩 곱해준다.
console.log(filterMaped) // [2, 6, 10]
map에서 받은 수들을 2씩 곱해주기 때문에 [1, 3, 5]를 받게되면 각 자리에 2를 곱해주어 [2, 6, 10]의 값이 나오게 된다.
const arr = [1, 2, 3, 4, 5]; const reducer = arr.reduce((acc, cur) => { if (cur % 2 !== 0) { acc.push(cur * 2); } return acc; }, [])
const arr = [1, 2, 3, 4, 5];
배열 안에 요소들을 입력해준다.
const reducer = arr.reduce((acc, cur) => {
reduce 메소드를 통해 배열 안의 요소들을 순회하고 콜백의 반환 값을 누적한다. (한개의 결과만 리턴 acc)
if (cur % 2 !== 0) {
acc.push(cur * 2);
}
조거문을 통해 짝수가 아닌 홀수인 cur에 2를 곱해준 다음 빈 배열에 push해준다.
return acc;
}, [])
push를 해준 배열을 리턴해준다.
acc의 초기 값을 빈 배열로 해준다.
Author And Source
이 문제에 관하여(코드 변환(고차함수)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@az1122/코드-변환고차함수-vikbotl9저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)