我正在使用 Google Chrome (55.0.2883.87) 使用 Google 的Web Speech API,我遇到了一些非常奇怪的行为。
当试图说出名字时,后跟一个数字(如John 4
),它通常只是说出名字和数字,因为它应该- 但对于某些名字,它会将单词chapter
放在名字和数字之间,所以Daniel 4
变成Daniel Chapter 4
.
我选择了一些随机名称并使用以下代码对其进行了测试:
<script>
var names = ['Brian', 'John', 'Mike', 'Julia', 'Daniel', 'Michael', 'David', 'Jason', 'Jack'];
names.forEach(function(name) {
var msg = new SpeechSynthesisUtterance(name + ' 4');
window.speechSynthesis.speak(msg);
});
</script>
该msg
变量在记录时不包括单词 chapterconsole.log()
在这 9 个名字中,名字John
和Daniel
是用它们之间的单词说出的chapter
。
问题
为什么会发生这种情况,哪些标准决定了哪些名称会受到影响?