js 全形轉半形
var hash = { '12288': ' ' };
// 全形轉半形
function dbc2sbc(str) {
var ret = [], i = 0, len = str.length, code, chr;
//走訪長度
for (; i < len; ++i) {
//獲取字符串 str 中第 i 個字符的 Unicode 編碼,並存儲在 code 變量中。
code = str.charCodeAt(i);
//轉hash
chr = hash[code];
//若 hash內 沒有對應的chr 則進入
//全形字符的範圍(65281到65374)
if (!chr && code > 65280 && code < 65375) {
//反存回hash中 增加速度
chr = hash[code] = String.fromCharCode(code - 65248);
}
//若不存在則存原本的東西
ret[i] = chr ? chr : str.charAt(i);
}
//存檔
return ret.join('');
}
留言
張貼留言