我正在尝试用 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 试过了。