SpeechRecognition: result event

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

The result event of the Web Speech API is fired when the speech recognition service returns a result — a word or phrase has been positively recognized and this has been communicated back to the app

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("result", (event) => {});

onresult = (event) => {};

Event type

Event properties

In addition to the properties listed below, properties from the parent interface, Event, are available.

SpeechRecognitionEvent.emma Read only

Returns an Extensible MultiModal Annotation markup language (EMMA) — XML — representation of the result.

SpeechRecognitionEvent.interpretation Read only

Returns the semantic meaning of what the user said.

SpeechRecognitionEvent.resultIndex Read only

Returns the lowest index value result in the SpeechRecognitionResultList "array" that has actually changed.

SpeechRecognitionEvent.results Read only

Returns a SpeechRecognitionResultList object representing all the speech recognition results for the current session.

Examples

This code is excerpted from our Speech color changer example.

You can use the result event in an addEventListener method:

js
const recognition = new SpeechRecognition();

recognition.addEventListener("result", (event) => {
  const color = event.results[0][0].transcript;
  diagnostic.textContent = `Result received: ${color}.`;
  bg.style.backgroundColor = color;
});

Or use the onresult event handler property:

js
recognition.onresult = (event) => {
  const color = event.results[0][0].transcript;
  diagnostic.textContent = `Result received: ${color}.`;
  bg.style.backgroundColor = color;
};

Specifications

Specification
Web Speech API
# eventdef-speechrecognition-result
Web Speech API
# dom-speechrecognition-onresult

Browser compatibility

BCD tables only load in the browser

See also