JS--惰性函數

關於惰性函數

如字面意思,惰性函數是真的惰嗎?
我以爲不是,我以爲與其說它是惰,還不如說它是聰明的,它不會去重複地去作某同樣東西,而造成冗餘。而這也剛好是它的做用,好處!!!

而惰性函數的優勢:就是能避免屢次重複的步驟判斷,冗餘等,只需一次斷定,便可直接去使用,不用作無用的重複步驟

惰性函數的應用場景:經常使用於函數庫的編寫,單例模式之中。在固定的應用環境不會發生改變,頻繁要使用同一判斷邏輯的

惰性函數的例子

以瀏覽器的監聽事件方法爲例:
addEventlistener的這種方法是不支持IE瀏覽器的
而IE瀏覽器是使用attachEvent這個方法

當咱們想要作到兼容性的時候,確定要先判斷這個瀏覽器是否適用此方法
正常的寫法:

咱們常常會用這種寫法來寫,但其實咱們每次都要進行判斷,重複着以前重複的東西,就致使性能不太好了

而咱們使用惰性函數這個思想來寫的話,就會避免這種重複判斷,即一次判斷,屢次直接使用
惰性函數思想的寫法:

這樣寫的話,就至關於第一次判斷了,就告訴它,接下來就是這個了,不用再去判斷了,直接就用這個方法就行了
相關文章
相關標籤/搜索