title: How to detect if webkitSpeechRecognition actually works in a browser
body: <p>Edge claims to support webkitSpeechRecognition, but it doesn't work (discussion <a href="https://techcommunity.microsoft.com/t5/discussions/web-speech-api-support/m-p/1104645/page/2" rel="nofollow noreferrer">here</a>, doesn't work on websites meant for testing, like this mozilla <a href="https://mdn.github.io/web-speech-api/speech-color-changer/" rel="nofollow noreferrer">one</a>, with the error &quot;Error occurred in recognition: language-not-supported&quot; despite my US english UI).</p>
  <p>How can I detect if webkitSpeechRecognition is actually supported? I tried to filter out Edge by looking at the user agent, but it shows up as Chrome, and I'd prefer to just use feature detection rather than looking at the user agent anyway. I'd like to check this <em>without</em> requesting microphone permission (if I did request microphone permission, I'd have to wait for them to accept, and then see the language-not-supported error). Is there a simple way to check this, similar to just checking the value of <code>window[&quot;webkitSpeechRecognition&quot;]</code> (which is defined in Edge, despite not working)?</p>