语音语法列表

实验性: 这是一个 实验性技术
在生产环境中使用此功能之前,请仔细查看 浏览器兼容性表

SpeechGrammarListWeb 语音 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 表仅在浏览器中加载

另请参阅