如何知道webkitSpeechRecognition是否已启动?

Tom*_*kat 9 javascript google-chrome webkitspeechrecognition

我正在制作机器人听我的声音.
所以我做了 :

this.recognition = new webkitSpeechRecognition();
Run Code Online (Sandbox Code Playgroud)

我可以这样开始听:

this.recognition.start();
Run Code Online (Sandbox Code Playgroud)

这是停止听:

this.recognition.stop();
Run Code Online (Sandbox Code Playgroud)

但是你知道一个函数会this.recognition在启动时返回true ,如果它停止会返回false吗?喜欢"isStarted()"

谢谢.

Kob*_*uek 10

你可以通过在onstartonend事件上引发一个标志变量来做到这一点:

var recognition = new webkitSpeechRecognition();
var recognizing = false;

recognition.onstart = function () {
    recognizing = true;
};

recognition.onend = function () {
    recognizing = false;
};

recognition.onerror = function (event) {
    recognizing = false;
};

if (recognizing) {
    // Do stuff
}
Run Code Online (Sandbox Code Playgroud)