setTimeout
и тому подобное не входит в спецификацию ECMAScript, поскольку они не являются функциями JavaScript. Это функции объекта window
среды браузера. Другие среды (Windows Scripting Host, NodeJS и т. Д.) Не обязательно будут иметь эти функции.
W3C пытается стандартизировать объект window
и его различные функции (в том числе setTimeout
), последняя версия представлена в разделе таймеров спецификации HTML5 . Во многом это кодифицирует то, что браузеры уже делают, хотя некоторые из них (например, говорят, что минимальное значение интервала должно быть 4
[миллисекунды]) кажутся (для меня) неуместными для спецификации API и реализаций кажется, что они решили ( в тестах , вы можете видеть, что современные браузеры с радостью делают более короткий интервал, за очевидным исключением Opera, которая, кажется, выполняет то, что говорит спецификация).