JavaScript惰性載入函數
描述:所謂惰性載入,就是說函數的if分支只會執行一次,之後調用函數時,直接進入所支持的分支代碼。有兩種實現惰性載入的方式,第一種事函數在第一次調用時,對函數本身進行二次處理,該函數會被覆蓋爲符合分支條件的函數,這樣對原函數的調用就不用再經過執行的分支了.
適用場景:在某個場景下我們的函數中有判斷語句,這個判斷依據在整個項目運行期間一般不會變化,所以判斷分支在整個項目運行期間只會運行某個特定分支,那麼就可以考慮惰性載入函數,比如處理兼容性的選擇語句
// 普通做法
function c(){
if(a>b){
console.log(a)
}else{
console.log(b)
}
}
// 惰性載入寫法
function c(){
if(a>b){
c = ()=>{
console.log(a,11)
}
}else{
c = ()=>{
console.log(b,22)
}
}
return c()
}
c();
這樣寫,可以節省很多性能。