| function shouldBe(actual, expected) { | |
| if (actual !== expected) | |
| throw new Error(`bad value: ${String(actual)}`); | |
| } | |
| var global = this; | |
| for (var i = 0; i < 100; ++i) { | |
| (() => { | |
| // |this| should reference to the global one. | |
| shouldBe(eval("this"), global); | |
| })(); | |
| } | |
| for (var i = 0; i < 100; ++i) { | |
| var THIS = {}; | |
| (function test() { | |
| // |this| should reference to the function's one. | |
| shouldBe(eval("this"), THIS); | |
| }).call(THIS); | |
| } |