diff --git a/snippets/detectLanguage.md b/snippets/detectLanguage.md new file mode 100644 index 000000000..ff31377c8 --- /dev/null +++ b/snippets/detectLanguage.md @@ -0,0 +1,20 @@ +--- +title: detectLanguage +tags: browser,intermediate +--- + +Detects the preferred language of the current user. + +- Use `NavigationLanguage.language` or the first `NavigationLanguage.languages` if available, otherwise return `defaultLang`. +- Omit the second argument, `defaultLang`, to use `'en-US'` as the default language code. + +```js +const detectLanguage = (defaultLang = 'en-US') => + navigator.language || + (Array.isArray(navigator.languages) && navigator.languages[0]) || + defaultLang; +``` + +```js +detectLanguage(); // 'nl-NL' +```