Эффект Подъёма JavaScript -- как ищется определение имени сущности. Пространства имён

Правило простое:

  • если интерпретатор JS не находит определения имени (переменной или функции) в данном уровне области видимости, то поиск начинается в родительском уровне и т.д. пока не выйдет на последний уровень -- глобальный, если определения нет и там, то объявляется исключительная ситуация (сообщения обо ошибке)
  • т.е. в JS можно говорить об "области видимости уровня функции". При по всех вложенных пространствах все элементы из родительских (любого уровня) видны, а вот в родительском пространстве обратиться к элементам, определённым в его потомках (функциях) -- нельзя.

Key Words for FKN + antitotal forum (CS VSU):