2 ms·
#!/usr/bin/node function main() { var a = 1; console.log(a); // named closure function foo() { a = a + 1; }
by chubot 12y ago
#!/usr/bin/node
function main() {
var a = 1;
console.log(a);
// named closure
function foo() {
a = a + 1;
}
foo();
console.log(a);
// anonymous closure
(function() {
a = a + 1;
})();
console.log(a);
}
main();
- kaoD 12y agoI'll emphasize GPs words: > There is no such thing as an "anonymous closure". There are only anonymous functions which may or may not create a closure. Which is exactly what you did: calling an anonymous function which happens to create a closure over variable `a`.