如字面意思,惰性函數是真的惰嗎? 我以爲不是,我以爲與其說它是惰,還不如說它是聰明的,它不會去重複地去作某同樣東西,而造成冗餘。而這也剛好是它的做用,好處!!! 而惰性函數的優勢:就是能避免屢次重複的步驟判斷,冗餘等,只需一次斷定,便可直接去使用,不用作無用的重複步驟 惰性函數的應用場景:經常使用於函數庫的編寫,單例模式之中。在固定的應用環境不會發生改變,頻繁要使用同一判斷邏輯的
以瀏覽器的監聽事件方法爲例: addEventlistener的這種方法是不支持IE瀏覽器的 而IE瀏覽器是使用attachEvent這個方法 當咱們想要作到兼容性的時候,確定要先判斷這個瀏覽器是否適用此方法 正常的寫法:
咱們常常會用這種寫法來寫,但其實咱們每次都要進行判斷,重複着以前重複的東西,就致使性能不太好了 而咱們使用惰性函數這個思想來寫的話,就會避免這種重複判斷,即一次判斷,屢次直接使用 惰性函數思想的寫法:
這樣寫的話,就至關於第一次判斷了,就告訴它,接下來就是這個了,不用再去判斷了,直接就用這個方法就行了