函数柯里化

以vue源码为基础

 function cached(fn) {
            var cache = Object.create(null)
            return (function cashedFn(str) {
                
                var hit = cache[str];
               
                return hit || (cache[str] = fn(str))
            })
        }
        var hyphenateRE = /\B([A-Z])/g;
        var hyphenate = cached(function (str) {
            return str.replace(hyphenateRE, '-$1').toLowerCase()
        });
        console.log(hyphenate('helloWorld'))//hello-world

 

posted @ 2020-08-10 15:51  minfight  阅读(82)  评论(0)    收藏  举报