this-1.js (291B)
1 // 'this' is lexically scoped in arrow functions 2 3 var obj = { 4 f: function (expected) { 5 assertEq(this, expected); 6 return a => this; 7 } 8 }; 9 10 var g = obj.f(obj); 11 assertEq(g(), obj); 12 13 var obj2 = {f: obj.f}; 14 var g2 = obj2.f(obj2); 15 assertEq(g2(), obj2); 16 assertEq(g(), obj);