Tested some js code in Chrome Dev Console and I'm a bit confused.
I know that in strict mode functions that are not methods of an object when referred to this keyword should receive undefined instead of global object.
function test(){ "use strict"; return this===undefined;} test(); Outputs false.
"use strict"; function test(){ return this===undefined;} test(); Still false.
(function test(){ "use strict"; return this===undefined;}()); Outputs true.
Just wanted to clarify. ʕ •ᴥ•ʔ I'm new to js.