var timeout = setTimeout(function(){
console.log("I'm message from timeout");
},0);
console.log("I'm message from outside timeout");
//1. I'm message from outside timeout
//2. I'm message from timeout
Warum werden die inneren Anweisungen nicht ausgeführt, obwohl setTimeout time auf 0 gesetzt ist? Ich benutze verschiedene Zeiten einschließlich 0/null und ich frage mich, wie man sowohl setTimeout-Objekt beibehalten und seine Anweisungen mit dem Fluss ausführen.Warum wird setTimeout (.., 0) nicht sofort ausgeführt?
setTimeout * immer * wird bis zur * nächsten * "Ausführungszeit" von JavaScript zurückgestellt. Ein Wert von 0/null ändert dies nicht (und wird in modernen Browsern als Wert von 5 behandelt). – user2864740
Ich schrieb eine lange Antwort hier: http://stackoverflow.com/questions/32580940/cleartimeout-necessary-after-settimeout-with-0ms/32591948#32591948 und es gibt wahrscheinlich viele andere verwandte Fragen – user2864740
http: // stackoverflow. com/questions/9647215/Was-ist-Minimum-Millisekunde-Wert-von-Settimeout? Lq = 1 – user2864740