Я працюю над музичною програмою, яка вимагає, щоб кілька елементів JavaScript синхронізувались з іншими. Я використовував setInterval
, що спочатку працює дуже добре. Однак з часом елементи поступово не синхронізуються, що погано в музичній програмі.
Я читав в Інтернеті, що setTimeout
є більш точним, і ви можете setTimeout
якось мати петлі. Однак я не знайшов загальної версії, яка б ілюструвала, як це можливо.
В основному у мене є такі функції, як такі:
//drums
setInterval(function {
//code for the drums playing goes here
}, 8000);
//chords
setInterval(function {
//code for the chords playing goes here
}, 1000);
//bass
setInterval(function {
//code for the bass playing goes here
}, 500);
Спочатку це працює дуже добре, але протягом приблизно хвилини звуки стають помітно несинхронізованими, як це я вже читав setInterval
. Я читав, що setTimeout
може бути більш послідовно точним.
Чи міг би хтось просто показати мені основний приклад використання, setTimeout
щоб щось циклювати на невизначений час? Як варіант, якщо є спосіб досягти більш синхронних результатів за допомогою setInterval
або навіть іншої функції, будь ласка, дайте мені знати.