SpeechRecognitionResultList - 表示 SpeechRecognitionResult 对象的列表

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

SpeechRecognitionResultListWeb Speech API 的接口,表示 SpeechRecognitionResult 对象的列表,如果以 continuous 模式捕获结果,则只包含单个结果对象。

属性

SpeechRecognitionResultList.length 只读

返回 “数组” 的长度 — 列表中 SpeechRecognitionResult 对象的数量。

方法

SpeechRecognitionResultList.item

一个标准的 getter,它允许通过数组语法访问列表中的 SpeechRecognitionResult 对象。

实例

此代码摘自我们的语音颜色更改器实例。

recognition.onresult = function(event) {
  // SpeechRecognitionEventresults 属性返回一个 SpeechRecognitiontionResultList 对象
  // SpeechRecognitionResultList 对象包含了多个 SpeechRecognitionResultResult 对象。
  // 它具有 getter,因此可以像数组一样进行访问
  // 第一个 [0] 返回位置 0 处的 SpeechRecognitionResult。
  // 每个 SpeechRecognitionResult 对象都包含具有单独结果的 SpeechRecognitionAlternative 对象。
  // 它们也有 getter ,因此可以像数组一样对其进行访问。
  // 第二个 [0] 返回位置 0 处的 SpeechRecognitionAlternative。
  // 然后,我们返回 SpeechRecognitionAlternative 对象的 transcript 属性
  var color = event.results[0][0].transcript;
  diagnostic.textContent = '收到结果:' + color + '。';
  bg.style.backgroundColor = color;
}

规范

规范 状态 备注
Web Speech API
SpeechRecognitionResultList 的定义
草稿 -

桌面浏览器兼容性

特性ChromeEdgeFirefoxInternet ExplorerOperaSafari
基础支持33 webkit 1≤79 webkit 1 不支持 不支持 不支持 不支持
item33 webkit 1≤79 webkit 1 不支持 不支持 不支持 不支持
length33 webkit 1≤79 webkit 1 不支持 不支持 不支持 不支持

移动浏览器兼容性

特性AndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
基础支持 支持 webkit 1 支持 webkit 1 未知 不支持 未知 不支持 不支持
item 支持 webkit 1 支持 webkit 1 未知 不支持 未知 不支持 不支持
length 支持 webkit 1 支持 webkit 1 未知 不支持 未知 不支持 不支持

1. 您需要将代码放到网络服务器上,以便识别服务能够工作。

Firefox OS 权限

要在应用中使用语音识别,您需要在 manifest 中指定以下权限:

"permissions": {
  "audio-capture" : {
    "description" : "Audio capture"
  },
  "speech-recognition" : {
    "description" : "Speech recognition"
  }
}

您还需要一个特权应用程序,因此您还需要包括以下内容:

  "type": "privileged"

相关链接