自动memoization

function memoize(func) {
  let memo = {};
  let slice = Array.prototype.slice;
  return function() {
    let args = slice.call(arguments);
    if (args in memo) {
      return memo[args];
    } else {
      return memo[args] = func.apply(this, args);
    }
  };
}
posted @ 2018-12-17 19:34  FE-神鸟  阅读(70)  评论(0编辑  收藏  举报