files/en-us/web/api/speechsynthesisutterance/lang/index.md
{{APIRef("Web Speech API")}}
The lang property of the {{domxref("SpeechSynthesisUtterance")}} interface gets and sets the language of the utterance.
If unset, the app's (i.e., the {{htmlelement("html")}} lang value) lang will be used, or the user-agent default if that is unset too.
A string representing a {{glossary("BCP 47 language tag")}}.
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 (const voice of voices) {
if (voice.name === selectedOption) {
utterThis.voice = voice;
}
}
utterThis.lang = "en-US";
synth.speak(utterThis);
inputTxt.blur();
};
{{Specifications}}
{{Compat}}