Functional JavaScript

node v10.24.1
version: 1.0.0
endpointsharetweet
const fnMap = (items, fn) => { const r = [] for (let i = 0; i < items.length; i++) { r.push(fn(items[i], items, i)) } return r } const fnReduce = (items, reducer, base) => { let r = base === undefined ? items.shift() : base for (let i = 0; i < items.length; i++) { r = reducer(r, items[i], i) } return r } const fnFilter = (items, filter) => { const r = [] for (let i = 0; i < items.length; i++) { if (filter(items[i], items, i)) { r.push(items[i]) } } return r } fnMap([1,2,3,4,5], (x, a, idx) => x*(idx+1)) fnReduce([10, 20, 30], (t, n, idx) => t + n, 0) fnFilter([1,2,3,4,5,6,7,8,9], (x, a, idx) => x % 2)
Loading…

no comments

    sign in to comment