Witam,
Mam taki oto przykładowy kod:
setInterval(function(){
funkcja();
},100);
Kod w funkcja() jest dość obszerny i ma kilka odwołań do dom, w zależności od ustawień w pewnym momencie, wykonuje się w czasie od 1ms do około 10ms. W efekcie od jednej iteracji setInterval do następnej zwykle upływa od 101ms do 110ms (jeśli dobrze rozumiem, że czas kodu nie wlicza się do czasu setTimeout()/setInterval()). Powiedzmy, że teraz muszę to z czymś zsynchronizować i po pewnym czasie te rozbieżności kilku ms robią różnicę. Chciałbym by czas wykonania funkcja() niezależnie od tego czy się tam będzie działo dużo czy mało wynosił 15ms. Macie może jakieś sugestie jak podejść do tego problemu. Myślałem żeby zrobić na początku i na końcu setInterval jakiś performance.now() i potem jakiś if, jak czas mniejszy od 15ms to puszczam jakąś funkcje zabierającą czas (petla z jakimiś obliczeniami) i znów sprawdzanie.