En fait, c’est un problème qu’a JS et de nombreux langages. Le fait d’attendre X unités de temps n’est pas strictement garanti, au sens que la tâche peut être réveillée un peu avant (ou un peu après) les X unités de temps d’attentes. C’est principalement dû à l’ordonnancement des threads et la fréquence de l’horloge.
Il est impossible d’arrivée à pile X unités de temps, les plus par des langages peuvent réveiller le thread soit un peu à près des X unités, ce qui n’est pas trop gênant du moment que ce n’est pas trop tard après, ou un peu avant les X unités ce qui peut être un méga problème dans certains types d’applications (qui ne seront pas codé en Js de toute façon^^). Certains langages comme Ada garantissent que la tâche se réveillera jamais avant les X unités qu’on a définis.
Bref, tout cela pour dire que pour l’utilisation que tu en as, ça ne causera aucun problème de mon point de vue.
Après, où as tu appris que setInterval n’est pas fiable ? Fiable dans quel sens ?