У меня есть массив JavaScript функции и задержки в миллисекундах:Запланированное исполнение с JavaScript
var events = [
{event: function_1, delay: 1234},
{event: function_2, delay: 2456},
...
{event: function_n, delay: 13154}
]
и клип. Идея заключается в том, когда фильм воспроизводится для выполнения функций в порядке, заданном аргументом задержки. Один из способов сделать это:
video.play();
for (var i = 0; i < events.length; i++) {
setTimeout(events[i].event(), events[i].delay);
}
Есть ли лучший способ сделать это, чтобы гарантировать точное время?
вы можете посмотреть в [requestAnimationFrames] (https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame). Если интервал фиксирован, вы даже можете попробовать 'setInterval'. Что-то вроде этого: 'function initTimer() {var count = 0; selInterval (function() {events [count] .event}, delay)} ' – Rajesh
просто используйте один таймер через' setInterval' –
Я голосую, чтобы закрыть этот вопрос как не по теме, потому что он просит лучшего способа кода что нибудь. это звучит как работа для codereview.stackexchange.com –