// 可缓存性
let memoize = function(fn) {
let cache = {}; // 缓存容器
return function() {
// 返回函数
let arg_str = JSON.stringify(arguments); // 缓存参数为对象字符串
console.log("参数是", arg_str);
console.log("缓存的值", cache);
cache[arg_str] = cache[arg_str] || fn.apply(fn, arguments); // 储存字符串
return cache[arg_str]; // 返回参数字符串
};
};
const add = (x, y) => x + y;
const addM = memoize(add);
addM(2, 3);
addM(2, 3);
addM(7, 2);
addM(4, 8);
addM(9, 0);
网友评论