В javascript есть ли какие-либо различия между этими двумя:
// call MyFunction normal way
MyFunction();
// call MyFunction with setTimeout to 0 //
window.setTimeout('MyFunction()', 0);
Причина, по которой я спрашивал, - это то, что недавно натолкнулась на ситуацию, когда код работает, только если я использую setTimeout(0)
для вызова функции.
Насколько я понимаю, setTimeout(0)
точно такой же, как вызов функции напрямую, потому что вы не устанавливаете какую-либо задержку. Но из того, что я вижу, как он работает в коде, setTimeout(0)
, кажется, выполняется последним.
Может ли кто-нибудь точно определить, как setTimeout(0)
действительно вызывается в порядке остальной части другого вызова функции?