美文网首页
数组reuduce实现map,filter

数组reuduce实现map,filter

作者: Chris__Liu | 来源:发表于2019-11-21 11:17 被阅读0次
const map = (arr, fn, context) => {
    return arr.reduce((acc, cur, index, arr) => {
        return [...acc, fn.call(context, cur, index, arr)]
    }, [])
}

var test = (item) => {
    return item * 2
}
var arr = [1, 2, 3]
map(arr, test, this)

const filter = (arr, fn, context) => {
    return arr.reduce((acc, cur, index, arr) => {
        return fn.call(context, cur, index, arr) ? [...acc, cur] : [...acc]
    }, [])
}

var test = (item) => {
    return item > 2
}
var arr = [1, 2, 3]
filter(arr, test, this)

相关文章

网友评论

      本文标题:数组reuduce实现map,filter

      本文链接:https://www.haomeiwen.com/subject/nrwzictx.html