js规定函数只能执行一次代码实例

快乐打工仔 分类:实例代码

分享一段代码实例,它实现了规定函数只能运行一次的功能。

代码实例如下:

function once(fn, context) {
  var result;
  return function () {
    if (fn) {
      result = fn.apply(context || this, arguments);
      fn = null;
    }
    return result;
  };
}
 
var canOnlyFireOnce = once(function () {
  console.log("犀牛前端部落");
});
canOnlyFireOnce();
canOnlyFireOnce();

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1).function once(fn, context) {},fn是要执行一次的函数,context规定fn函数的调用对象,也就是执行上下文。

(2).var result,声明一个变量,用来存储fn函数执行的返回结果。

(3).return function () {

  if (fn) {

    result = fn.apply(context || this, arguments);

    fn = null;

  }

  return result;

},返回函数对象,函数执行一次之后,就将其设置为null,所以只能执行一次。

二.相关阅读:

(1).apply()可以参阅js apply()一章节。

(2).arguments可以参阅javascript arguments一章节。

js规定函数只能执行一次代码实例,这样的场景在实际项目中还是用的比较多的,关于js规定函数只能执行一次代码实例就介绍到这了。

js规定函数只能执行一次代码实例属于前端实例代码,有关更多实例代码大家可以查看

回复

我来回复
  • 暂无回复内容