You are not calling the function, you are passing a reference to setTimeout that calls it directly, without the obj. before the call.
@getify explains it flawlessly, there are 4 modes: new, obj., bind/apply/call and default (window or error in strict mode)
As nhpatt notes you're not actually calling obj.method here, you're passing it as an argument, which will be called at a later time.
Looking at a possible implementation of setTimeout makes it clearer:
function setTimeout(func, delay) {
// wait for the delay to complete..
func();
}
Here you can see that when the function is called there's nothing to the left of it.
(Spoilers: this == window, not what is left of the function call)