function myTimer() {
randint= Math.floor(Math.random() * 10)+1;
randstimuli=gorilla.stimuliURL(dict[randint]);
var audio = new Audio(randstimuli);
audio.play();
var start=Date.now();
var ans=prompt("was the last number the same as the one two steps ago");
console.log(Date.now()-start);
}
У меня есть эта функция, в которой я играю звук и задаю пользователю вопрос через подсказку. Когда я запускаю функцию, звук воспроизводится сразу после ответа на приглашение, даже если звук предшествует подсказке в коде. Из-за однопоточной природы Javascript я предполагаю, что звук запускается асинхронно из-за предположения о длине звука.
Мои аудио очень короткие, они содержат только одно слово. Я хочу, чтобы они были закончены до того, как откроется приглашение.