js-惰性函数

关于惰性函数

如字面意思,惰性函数是真的惰吗?
我觉得不是,我觉得与其说它是惰,还不如说它是聪明的,它不会去重复地去做某一样东西,而形成冗余。而这也恰好是它的作用,好处!!!

而惰性函数的优点:就是能避免多次重复的步骤判断,冗余等,只需一次判定,即可直接去使用,不用做无用的重复步骤

惰性函数的应用场景:常用于函数库的编写,单例模式之中。在固定的应用环境不会发生改变,频繁要使用同一判断逻辑的

惰性函数的例子

以浏览器的监听事件方法为例:
addEventlistener的这种方法是不支持IE浏览器的
而IE浏览器是使用attachEvent这个方法

当我们想要做到兼容性的时候,肯定要先判断这个浏览器是否适用此方法
正常的写法:

我们经常会用这种写法来写,但其实我们每次都要进行判断,重复着之前重复的东西,就导致性能不太好了

而我们使用惰性函数这个思想来写的话,就会避免这种重复判断,即一次判断,多次直接使用
惰性函数思想的写法:

这样写的话,就相当于第一次判断了,就告诉它,接下来就是这个了,不用再去判断了,直接就用这个方法就好了

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!