Всем добрый день.
Подскажите пожалуйста, читал доку js по замыканию. Но немного не понял основного его назначения.
function outer() {
var outerVar = 13;
var func = function(innerVar) {
return innerVar + outerVar;
}
return func
}
var func = outer();
console.log(func(2)); //15
Как я понимаю, оно позволяет управлять областью видимости переменных. Например, в javascript нет private и protected переменных, и еще много чего нет, но эту функциональность можно получить при помощи замыканий.
Приведите пожалуйста еще какие нибудь примеры. Хочется разобраться в замыканиях.
Спасибо!