ES6+ Basic4

์ธํ”„๋Ÿฐ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ JavaScript ES6+arrow-up-right / ์œ ์ธ๋™arrow-up-right

๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜ reduce, take

  • ์‹ค์ œ๋กœ ์—ฐ์‚ฐ์„ ์‹œ์ž‘ํ•˜๋Š” ์‹œ์ž‘์ ์„ ์•Œ๋ฆฌ๋Š” ํ•จ์ˆ˜

reduce

L.entries = fuction *(obj) {
    for (const k in obj) yield [k, obj[k]];
};

// Array.prototype.join๋ณด๋‹ค ๋‹คํ˜•์„ฑ์ด ๋†’์€ joinํ•จ์ˆ˜
const join = curry((sep = ',', iter) =>
    reduce((a, b) => '${a}${sep}${b}', iter));

// const queryStr = obj => go(
//   obj,
const queryStr = pipe(
    L.entries,
    L.map(([k, v])=> '${k}=${v}'),
    join('&');

//    Object.entries,
//    map(([k, v])=> '${k}=${v}'),
//    reduce((a, b) => '${a}&${b}')
);

log(queryStr({ limit: 10, offset:10, type:'notice'}));

take, find

  • find๋Š” take๋ฅผ ํ†ตํ•ด ๊ฒฐ๋ก (๊ฒฐ๊ณผ)์„ ์ง€์–ด์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ

L.map + take๋กœ map ๋งŒ๋“ค๊ธฐ

L.filter + take๋กœ filter ๋งŒ๋“ค๊ธฐ

L.flatten

  • 1์ฐจ์› ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค์–ด์ฃผ๋Š” ์ œ๋„ˆ๋ ˆ์ดํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜

L.flatMap

2์ฐจ์› ๋ฐฐ์—ด ๋‹ค๋ฃจ๊ธฐ

์ง€์—ฐ์„ฑ / ์ดํ„ฐ๋Ÿฌ๋ธ” ์ค‘์‹ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์‹ค๋ฌด์ ์ธ ์ฝ”๋“œ ์˜ˆ์ œ

Last updated