Skip to content

Instantly share code, notes, and snippets.

@ksol
Last active July 10, 2021 13:37
Show Gist options
  • Save ksol/62b489572944ca70b4ba to your computer and use it in GitHub Desktop.
Save ksol/62b489572944ca70b4ba to your computer and use it in GitHub Desktop.
Language detection in javascript
window.navigator.language // -> "fr"
window.navigator.languages // -> ["fr-FR", "fr", "en-US", "en", "es", "de"]
window.navigator.userLanguage // -> undefined
window.navigator.browserLanguage // -> undefined
window.navigator.systemLanguage // -> undefined
window.navigator.language // -> "fr"
window.navigator.languages // -> [ "fr", "fr-FR", "en-US", "en" ]
window.navigator.userLanguage // -> undefined
window.navigator.browserLanguage // -> undefined
window.navigator.systemLanguage // -> undefined
window.navigator.language // -> undefined
window.navigator.languages // -> undefined
window.navigator.userLanguage // -> 'en-us'
window.navigator.browserLanguage // -> 'en-us'
window.navigator.systemLanguage // -> 'en-us'
window.navigator.language // -> undefined
window.navigator.languages // -> undefined
window.navigator.userLanguage // -> 'en-US'
window.navigator.browserLanguage // -> 'en-US'
window.navigator.systemLanguage // -> 'en-US'
window.navigator.language // -> 'en-US'
window.navigator.languages // -> undefined
window.navigator.userLanguage // -> 'en-US'
window.navigator.browserLanguage // -> 'en-US'
window.navigator.systemLanguage // -> 'en-US'
window.navigator.language // -> "fr-fr"
window.navigator.languages // -> undefined
window.navigator.userLanguage // -> undefined
window.navigator.browserLanguage // -> undefined
window.navigator.systemLanguage // -> undefined
@basvandorst
Copy link

error TS2339: Property 'systemLanguage' does not exist on type 'Navigator'

To avoid errors this Typescript error you have to change the last 3 lines of code:

 let language = {
      a: window.navigator.language,
      b: window.navigator.languages,
      c: window.navigator['userLanguage'],
      d: window.navigator['browserLanguage'],
      e: window.navigator['systemLanguage'],
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment