SpeechSynthesisUtterance: SpeechSynthesisUtterance() constructor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2018.

The SpeechSynthesisUtterance() constructor of the SpeechSynthesisUtterance interface returns a new SpeechSynthesisUtterance object instance.

Syntax

js
new SpeechSynthesisUtterance(text)

Parameters

text

A string containing the text that will be synthesized when the utterance is spoken.

Examples

The following snippet is excerpted from our Speech synthesizer demo.

js
const synth = window.speechSynthesis;

const inputForm = document.querySelector("form");
const inputTxt = document.querySelector("input");
const voiceSelect = document.querySelector("select");

const voices = synth.getVoices();

// ...

inputForm.onsubmit = (event) => {
  event.preventDefault();

  const utterThis = new SpeechSynthesisUtterance(inputTxt.value);
  const selectedOption =
    voiceSelect.selectedOptions[0].getAttribute("data-name");
  for (let i = 0; i < voices.length; i++) {
    if (voices[i].name === selectedOption) {
      utterThis.voice = voices[i];
    }
  }
  synth.speak(utterThis);
  inputTxt.blur();
};

Specifications

Specification
Web Speech API
# dom-speechsynthesisutterance-speechsynthesisutterance

Browser compatibility

BCD tables only load in the browser

See also