Я пытаюсь написать тестовый код в javascript, где я пытаюсь одновременно регистрировать и произносить случайное число. Для преобразования текста в речь я использую SpeechSynthesisUtterance
с window.speechSynthesis
:
function generate(){
for (let i = 0;i<100;i++){
let randomNumber = numberGenerator.generateNumber();
showAndSayIt(randomNumber);
}
}
const showAndSayIt = (m) => {
var msg = new SpeechSynthesisUtterance(m);
console.log(m);
window.speechSynthesis.speak(msg);
}
Когда я запускаю этот код, я сразу получаю все логи и только после того, как все будет готово, я начинаю слышать 100 речей одну за другой. Таким образом, кажется, что все сгенерированные речи накапливаются, а затем, когда нет другой команды для выполнения, генератор речи выдает их все сразу. Есть ли способ изменить это поведение и иметь возможность произносить речь в правильном порядке?
Я пробовал это с Google Chrome 75.
the right order
я подразумеваю порядок их написания. Да, как вы упомянули console.log(1), затем say(1), затем снова console.log(2) и затем speak(2), где 1 и 2 — случайно сгенерированные числа. - person Mikayil Abdullayev   schedule 03.09.2019