본문 바로가기

개발/ES6

(4)
Lodash Zip() : Reduce로 구현해보기 const originList = [ [1, 2], [3, 4, 5], [6, 7, 8, 9], ]; const reduceZipResult = originList.reduce((acc, cur, idx) => { for (let i = 0; i < cur.length; i++) { let el = acc[i]; if (el === undefined) { el = []; for (let j = 0; j < i; j++) { el[j] = undefined; } //el = Array(cur.length).fill(undefined); } el[idx] = cur[i]; acc[i] = el; } return acc; }, []); console.log(reduceZipResult);
함수형 프로그래밍 - Reduce를 활용하여 Map, Filter 구현하기 let list = [1, 3, 4, 5, 6, 10]; function filter(list, predicate) { let new_list = []; for (let i = 0; i 5; } let filterResult = filter(list, predicate); console.log(filterResult); function myMap(list, func) { let result = []; for (let i = 0; i < list.length; i++) { result...
Javascript ES6 - Set 기능 내부 구현해보기 const list = [3, 4, 3, 5, 10, 7, 1, 5, 4, 10]; function mySet(list) { let result = {}; for (let i = 0; i < list.length; i++) { if (result[list[i]] === undefined) { result[list[i]] = [list[i]]; } else { result[list[i]].push(list[i]); } } console.log(Object.keys(result)); return result; } console.log(new Set(list)); console.log(mySet(list)); Set 함수를 사용하지 않고 날 것으로 mySet 함수를 구현해보았다. Object 객체를 만들고, ..
Javascript ES6 - map, filter, reduce 함수 내부 동작 구현하기 1. Map function myMap(list, func) { let result = []; for (let i = 0; i (x % 2 === 0 ? true : false)); console.log(example); console.log(myMap(list, (x) => (x % 2 === 0 ? true : false))); map 함수 내부를 구현해보았다. 어려운 것은 아니고, 따로 myMap을 만들어서 내부적으로 어떻게 동작하는지 짐작하여 구현해보았다. 여기에서 중요한..