js獲取瀏覽器默認語言設置
- 2019 年 11 月 28 日
- 筆記
項目用到多語言,之前也接觸過,不過沒有自測過,通過自測,寫出通用比較簡化的方法
// i18n import i18n from './i18n' let lang = navigator.language||navigator.userLanguage i18n.locale = lang.substr(0, 2) || 'en'
網上別的常見方法
<script type="text/javascript"> var type = navigator.appName; if (type == "Netscape"){ var lang = navigator.language;//獲取瀏覽器配置語言,支援非IE瀏覽器 }else{ var lang = navigator.userLanguage;//獲取瀏覽器配置語言,支援IE5+ == navigator.systemLanguage }; var lang = lang.substr(0, 2);//獲取瀏覽器配置語言前兩位 if (lang == "zh"){ alert(lang); //window.location.replace('url');//中文編碼時打開鏈接 }else if (lang == "en"){ window.location.replace('url'); }else{//其他語言編碼時打開以下鏈接 window.location.replace('url'); }; </script>
文中截取lang的前2位字元,是因為瀏覽器語言返回值可能是:
zh-CN Chinese(PRC)
zh-TW Chinese(Taiwan Region)
zh-HK Chinese(Hong Kong SAR, PRC)
zh-SC Chinese(Singapore)
en-US English(United States)
en English