首页 > 代码库 > JavaScript Patterns 4.8 Function Properties - A Memoization Pattern

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); // 3var 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 storagemyFunc.cache = {};