语音语法列表
SpeechGrammarList
是 Web 语音 API 的一个接口,它表示 SpeechGrammar
对象的列表,这些对象包含我们希望识别服务识别的单词或单词模式。
语法使用 JSpeech 语法格式 (JSGF) 定义。将来也可能支持其他格式。
构造函数
SpeechGrammarList()
实验性-
创建一个新的
SpeechGrammarList
对象。
实例属性
SpeechGrammarList.length
只读 实验性-
返回
SpeechGrammarList
中包含的SpeechGrammar
对象的数量。
实例方法
SpeechGrammarList.item()
实验性-
标准 getter - 允许使用数组语法从
SpeechGrammarList
中检索各个SpeechGrammar
对象。 SpeechGrammarList.addFromURI()
实验性-
获取特定 URI 上存在的语法并将其作为新的
SpeechGrammar
对象添加到SpeechGrammarList
中。 SpeechGrammarList.addFromString()
实验性-
将字符串中的语法作为新的
SpeechGrammar
对象添加到SpeechGrammarList
中。
示例
在我们简单的 语音颜色更改器 示例中,我们使用 SpeechRecognition()
构造函数创建一个新的 SpeechRecognition
对象实例,创建一个新的 SpeechGrammarList
,使用 SpeechGrammarList.addFromString
方法将我们的语法字符串添加到其中,并将其设置为将被 SpeechRecognition
实例使用 SpeechRecognition.grammars
属性识别的语法。
js
const grammar =
"#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;";
const recognition = new SpeechRecognition();
const speechRecognitionList = new SpeechGrammarList();
speechRecognitionList.addFromString(grammar, 1);
recognition.grammars = speechRecognitionList;
规范
规范 |
---|
Web 语音 API # 语音语法列表 |
浏览器兼容性
BCD 表仅在浏览器中加载