Обложка канала

Frontender's notes

Годные заметки, новости, видео и интересные статьи для Frontend разработчиков.

Frontender's notes

3 года назад
Открыть в
Кратко о замыкании в JS Алоха товарищи фронты! Постарался сделать краткую выжимку с примером о том что такое замыкание и зачем оно нужно. Замыкание в JavaScript - это способность функции запоминать и получать доступ к переменным из области видимости, в которой она была объявлена, даже после того, как эта область видимости уже была закрыта. Пример: function outerFunction() { const outerVariable = "Hello, "; function innerFunction(name) { console.log(outerVariable + name); } return innerFunction; } const innerFunc = outerFunction(); innerFunc("Bob"); // выведет "Hello, Bob" В этом примере мы создаем внутреннюю функцию innerFunction, которая получает доступ к переменной outerVariable из внешней функции outerFunction. Мы возвращаем innerFunction, но не вызываем ее непосредственно. Затем мы вызываем outerFunction и сохраняем результат в переменной innerFunc, которая теперь содержит innerFunction. Потом мы вызываем innerFunc, передавая ей аргумент "Bob". Как результат, на консоль будет выведено "Hello, Bob", что свидетельствует о правильной работе замыкания. Обратите внимание, что outerVariable из outerFunction может быть изменен после создания innerFunction, и все равно innerFunction будет использовать значения outerVariable, которые существовали на момент ее создания. Это позволяет создавать функции с состоянием, сохраняющимся между вызовами.