Web Speech API中语法的影响

Mig*_*ell 9 javascript html5 parsing speech-recognition webspeech-api

在Web Speech API的示例中,始终指定语法.例如,在MDN的颜色更改示例中,语法为:

#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 ;
Run Code Online (Sandbox Code Playgroud)

但是,在实际使用API​​(在Chrome 54.0.2840.71上)时,结果函数:

  1. 有时会返回不符合提供的语法的字符串
  2. 不提供描述语音的解析树

然后语法实际上做了什么?如何获得这些行为中的任何一种(限制语法并查看解析树)?