| var result = []; | |
| for (var i = 0; i < 5; i++) { | |
| result[i] = (function inner(x) { | |
| // additional enclosing context | |
| return function() { | |
| console.log(x); | |
| } | |
| })(i); | |
| } | |
| result[0](); // 0, expected 0 | |
| result[1](); // 1, expected 1 | |
| result[2](); // 2, expected 2 | |
| result[3](); // 3, expected 3 | |
| result[4](); // 4, expected 4 |