// @target: es5 export class Test { constructor() { let outerArray: Array = [1, 2, 3]; let innerArray: Array = [1, 2, 3]; for (let outer of outerArray) for (let inner of innerArray) { this.aFunction((newValue, oldValue) => { let x = outer + inner + newValue; }); } } public aFunction(func: (newValue: any, oldValue: any) => void): void { } }