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 = {};
References:
JavaScript Patterns - by Stoyan Stefanov (O`Reilly)
转载于:https://www.cnblogs.com/haokaibo/p/A-Memoization-Pattern.html
相关资源:Python Cookbook英文版