美文网首页
惰性函数

惰性函数

作者: Veycn | 来源:发表于2019-07-25 11:25 被阅读0次

无论这个函数调用多少次,返回的都是第一次调用时候的结果。
惰性函数的意思就是,这个事儿我做了一次之后就再也不做了,你再怎么调用我,我也只能给你我第一次完成时的东西。

代码简单啊, 刚看到代码的我,蒙圈了~

var foo = function(){
  var t = new Date()
  foo = function(){
    return t
  }
  return foo()
}

看不懂怎么办?作为前端小白的自我修养,我默默的打开了chrome调试工具。


在作用域里面,t已经有了。foo最初指向的是最外层的函数,下面即将改变foo的指向。

t进入了闭包中,foo指向的是里面的函数,在后面多次的foo()调用中,都是调用的function(){return t},由于闭包,t一直被保存着。每次执行都返回了t

这样看来就很简单了。
整个代码第一次调用,生成了一个t = Thu Jul 25 2019 11:11:09 GMT+0800 (中国标准时间)。然后被存储了起来。
foo则指向了一个新的函数,最外层函数在返回foo()之后,就失去了作用。上面执行六次foo()函数,只有第一次是执行的最外层函数,后面五次都是新的函数。

相关文章

  • 惰性函数

    今天啊看到一篇讲js性能优化---惰性函数的文章,之前没听过这个。 主要应用在提高js的执行效能上,主要也是应用在...

  • 惰性函数

    惰性函数按照《高程》里面讲解,主要用来屏蔽浏览器之间的差异。其实,也可以用来实现单例。所以惰性函数主要的作用:环境...

  • 惰性函数

    惰性函数它比较懒,不会立即执行。只有需要的时候才去执行创建或加载一些资源对象。举个简单的例子。最近登录流行微信登录...

  • 惰性函数

    无论这个函数调用多少次,返回的都是第一次调用时候的结果。惰性函数的意思就是,这个事儿我做了一次之后就再也不做了,你...

  • 惰性函数

    addEventListener 事件函数封装

  • 前端_JavaScript

    JavaScript 专题之惰性函数 JavaScript 专题系列第十五篇,讲解惰性函数 需求 我们现在需要写一...

  • JavaScript惰性函数

    惰性函数 定义: 惰性函数,函数内部有许多判断来来检测函数,这样多次调用会浪费时间和浏览器资源,所有当第一次判断完...

  • 惰性加载函数

    1.普通函数 缺点: 每次调用要重复判断 2.避免每次重复判断 缺点:首次页面加载会进行一次判断,延缓页面首次加载...

  • JavaScript惰性函数

    背景 在开发过程中,有时候需要对浏览器环境进行检测,比如封装一个AJAX函数的时候需要写一个函数进行检测,但是常规...

  • 惰性加载函数

    1.常规 缺点:每次调用都会执行条件判断,可避免 2.改进,只在加载时做判断 缺点:虽避免了判断,但如果从未使用过...

网友评论

      本文标题:惰性函数

      本文链接:https://www.haomeiwen.com/subject/ebbcrctx.html