Закрытие больше касается области действия переменной. Поэтому важно знать, что область действия переменной - это функция, в которой она была определена. Любая функция, выполняемая внутри этой области, будет иметь доступ к ее функции как таковой. Родительская функция не будет иметь доступ к переменной , потому что она находится за пределами области этого ребенка.
Следовательно, переменная в объектном литерале будет привязана к функции, в которой она содержится. (Если это не функция, то она находится в области ). Конструктор - это функция, поэтому любые переменные, которые она определяет, ограничены сами по себе и недоступны снаружи. Любые внутренние методы, которые есть в конструкторе, имеют доступ к тем определенным переменным.
Закрытие создается, когда функция имеет доступ к переменной, которая находится за пределами ее собственной области действия, и эта переменная может быть изменена или изменена чем-то еще ... даже после завершения функции.
Я надеюсь, что это помогло некоторым.