在學(xué)習(xí)JS的IIFE的時候,看到很多教程都說IIFE可以保持變量的私有。例如(functionfoo(){varb=7;})();console.log(b);//referenceError在函數(shù)外無法訪問變量b。但是這里用正常的函數(shù)聲明,不是也能達到同樣的效果嗎?另外還看到有教程都說IIFE可以防止polluteglobalvariables。比如varb=5;(functionfoo(){varb=7;})();console.log(b);//5但是正常的函數(shù)聲明,不是也能達到同樣的效果嗎?我不理解IIFE在這兩個方面有比正常的函數(shù)聲明有什么優(yōu)勢
關(guān)于IIFE能保持變量私有和污染全局變量的問題
開滿天機
2019-05-20 17:22:19