美文网首页
lodash 部分方法

lodash 部分方法

作者: 9吧和9说9话 | 来源:发表于2020-02-24 18:31 被阅读0次

    函数方法

    1. _.after(n, func)
    function after(n, fn) {
        return function (...args) {
            if(--n<1) {
                fn.apply(null, args);
            }
        }
    }
    

    before也类似。

    1. _.ary(func, [n=func.length])
    function ary(fn, length) {
        return function (...args) {
            fn.apply(null, args.splice(0, length));
        }
    }
    
    1. _.curry(func, [arity=func.length]) 函数currying

    功能描述:创建一个函数,该函数接收 func 的参数,要么调用func返回的结果,如果 func 所需参数已经提供,则直接返回 func 所执行的结果。或返回一个函数,接受余下的func 参数的函数,可以使用 func.length 强制需要累积的参数个数

    function curry(fn, length) {
        let args = [];
        length = length|| fn.length;
        return function inner(...arg) {
            args = args.concat(arg);
            if(length) {
                if(args.length<length) {
                    // console.log('inner');
                    return inner;
                } else {
                    return fn.apply(null, args)
                }
            }
        }
    }
    
    1. _.debounce(func, [wait=0], [options={}])

    参考:

    1. debouncing-throttling-explained-examples
    2. throttle vs debounce

    相关文章

      网友评论

          本文标题:lodash 部分方法

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