Инкапсуляция в js
При написании программы могут возникать глобальные переменные, что является ошибкой. Нужно максимально скрыть служебные переменные от «внешнего мира».
Для этого используется механизм инкапсуляции. Инкапсуляция в js реализуется через функции.
Примером инкапсуляции может быть следующий листинг:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | // не правильно // В данном примере массив mass и переменная i будут глобальными <script> let mass = ["Яблоко", "Груша"]; for(let i = 0; i < mass.length; i++){ console.log(mass[i]) } </script> // правильно <script> // В данном примере массив mass и переменная i будут локальными (function(){ let mass = ["Яблоко", "Груша"]; for(let i = 0; i < mass.length; i++){ console.log(mass[i]) } })(); </script> |
(function(){…})(); — данная форма записи сразу вызывает анонимную функцию
Как сделать часть инкапсулированной функции глобальной (экспорт)
1 2 3 4 5 6 7 | (function(){ var a = 10; // локальная переменная window.b = 20; // глобальная переменная var method1 = function(){} // локальная функция window.method2 = function(){} // глобальная функция })(); |
Данный эффект называется экспортом в глобальную область видимости
30 сентября 2020 /
2563 Views /
0 Comment