JavaScript Patterns 4.8 Function Properties - A Memoization Pattern

Gets a length property containing the number of arguments the function expects:

function func(a, b, c) {}

console.log(func.length); // 3

var myFunc = function () {

    //  serialize the arguments object as a JSON string and use that string as a key in your cache object
    
    var cachekey = JSON.stringify(Array.prototype.slice.call(arguments)),
    
    if (!myFunc.cache[cachekey]) {
    
        var result = {};
        
        // ... expensive operation ...
        
        myFunc.cache[cachekey] = result;
    
    }

    return myFunc.cache[cachekey];

};

// cache storage

myFunc.cache = {};

 

JavaScript Patterns 4.8 Function Properties - A Memoization Pattern,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。