0
我正在練習重寫下劃線庫中的_.memoize,並且遇到了一些困難。我想這樣做,它會返回一個函數,檢查它是否已經計算了給定參數的結果,並返回具有相同參數的調用的存儲值。在下劃線庫中重寫_.memoize
有人可以提供一些建議,使其正常工作?
_.memoize = function(func) {
var cache = {}, result;
var args = Array.prototype.slice.call(arguments);
return function(){
if(args in cache) {
return cache[arg];
} else {
return cache[arg] = func.apply(this, arguments)
};
}
};