Насколько я понимаю, шаблон IIFE — это обходной путь к тому факту, что в ES5 и ниже нет возможности создавать блочные области. Обернув все в функцию и немедленно вызвав ее, мы можем создать область видимости.
Теперь, когда let
и const
получат поддержку большего количества браузеров, уменьшит ли это потребность в чем-то вроде шаблона IIFE?
let
для замены IIFE, но какое отношение имеетconst
ко всему этому? IIFE обеспечивает конфиденциальность внутри области действия и позволяет избежать загрязнения пространства имен.const
вообще не помогает с конфликтами пространств имен. Он обеспечивает защиту от записи, но не конфиденциальность при чтении. - person jfriend00   schedule 05.11.2015