如何在JS中的函数调用之间存储参数

时间:2019-07-24 06:44:10

标签: javascript function

一个函数被多次调用,有没有一种方法可以存储上次函数调用的上下文/参数并与当前函数进行检查。

2 个答案:

答案 0 :(得分:16)

在定义函数时,我将使用闭包来存储持久变量,并将其重新分配给每次调用传递的参数,例如:

const fn = (() => {
  let lastArgs;
  return (...args) => {
    console.log('function was called with args:', args);
    console.log('past args were:', lastArgs);
    lastArgs = args;
  };
})();

fn('foo', 'bar');
fn('baz');

答案 1 :(得分:1)

您可以使用全局变量来存储数据。每当有一个新函数调用,请使用全局变量检查新参数并执行所需的操作。