Timing in JS - multiple setIntervals são executados ao mesmo tempo e iniciam ao mesmo tempo?

Digamos que eu tenha uma função:

myFunc = function(number) {
  console.log("Booyah! "+number);
}

E eu quero que ele seja executado em um intervalo definido. Parece que eu deveria usarsetInterval, Hã!

Mas e se eu quiser executar vários intervalos da mesma função, todos começando exatamente no mesmo horário?

setInterval(function(){
  myFunc(1);
}, 500);

setInterval(function(){
  myFunc(2);
}, 1000);

setInterval(function(){
  myFunc(3);
}, 2000);

Assim, o primeiro é executado exatamente duas vezes no tempo que leva o segundo para ser executado uma vez e o mesmo entre o segundo e o terceiro.

Como você se certifica de que todas começam ao mesmo tempo, de modo que estejam sincronizadas?

questionAnswers(4)

yourAnswerToTheQuestion