龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

Javascript Memoizer浅析(2)

时间:2014-10-19 11:01来源:网络整理 作者:网络 点击:
分享到:
复制代码 代码如下: function Memoize(fn){ var cache = {}, args = {}; return function(){ for( var i=0, key = args.length; i key; i++ ) { if( equal( args[i], arguments ) ) return cache[i]; } args

复制代码 代码如下:

function Memoize(fn){
    var cache = {}, args = {};
    return function(){
        for( var i=0, key = args.length; i < key; i++ ) {
            if( equal( args[i], arguments ) )
                return cache[i];
        }
        args[key] = arguments;
        cache[key] = fn.apply(this, arguments);
        return cache[key];
    };
}

还有一些其他的办法,都可以写成简洁的函数式方法。

精彩图集

赞助商链接