Я вроде понимаю замыкания в javascript, но в чем я не уверен, так это в том, как они обрабатывают вложенные функции. Например:
var a = function(o) {
o.someFunction(function(x) {
// do stuff
});
}
Я знаю, что новое закрытие создается каждый раз, когда я вызываю функцию a
, но включает ли это закрытие также новый экземпляр анонимной функции, переданной в someFunction
? Было бы лучше, если бы я сделал ff вместо:
var b = function(x) { /* do stuff */ }
var a = function(o) {
o.someFunction(b);
}