js 實現 前端國際化

在之前的文章裏, 我貼過 小程序的國際化方法, 這裏的 方法和小程序的 基本相似, 

但是還是有細微不同, 所以單獨貼出來.

/**
 *
 * 使用方法
 *
 * 先調用 init_L 方法初始化
 *
 * 然後使用 _.XXX 或者 _['XXX'] 獲取具體值
 * 
 */

// 獲取瀏覽器 緩存中的 語言
var lang = localStorage.getItem('appLanguage')
if(!lang){
	//獲取系統語言
	lang = navigator.language;
}

if (lang == undefined) {
	lang = "zh-hk";
} else {
	lang = lang.replace(/_/g, '-');
}
//將語言轉爲小寫
lang = lang.toLowerCase()

var default_L = lang;

// 兩種 key : 'appTitle' 或者  'app title', 第一種  _.appTitle, 第二種: _['app title']
var default_ = {
	"en": {
		'appTitle': 'H5'
	},
	"zh_cn": {
		'appTitle': '網頁版'
	},
	"zh_hk": {
		'appTitle': '網頁版'
	}
}

// 設置 默認語言
var _ = default_.zh_hk;

// 我這裏是使用瀏覽器默認語言, 如果這裏不調用, 則需要在引用頁的js內申明.
init_L();

// 設置語言, L 不傳 則獲取瀏覽器語言
function init_L(L) {
	if (L != null && L != "" && L != 'undefined' && L != undefined) {
		default_L = L;
	}

	if (default_L == "en") {
		_ = default_.en;
	} else if (default_L == "zh-cn") {
		_ = default_.zh_cn;
	} else {
		_ = default_.zh_hk;
	}
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章