var foo = { bar: function() { return this.baz; }, baz: 1 }; (function(){ return typeof arguments[0]; })(foo.bar);
here typeof is function
var foo = { bar: function() { return this.baz; }, baz: 1 }; (function(){ return typeof arguments0; })(foo.bar);
then when function is called why type of is undefined