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.