您好,欢迎访问一九零五行业门户网

javascript实现全角与半角字符的转换_javascript技巧

先上代码,再说废话^_^
复制代码 代码如下:
/**
 * 转全角字符
 */
function todbc(str){
    var result = ;
    var len = str.length;
    for(var i=0;i    {
        var ccode = str.charcodeat(i);
        //全角与半角相差(除空格外):65248(十进制)
        ccode = (ccode>=0x0021 && ccode        //处理空格
        ccode = (ccode==0x0020)?0x03000:ccode;
        result += string.fromcharcode(ccode);
    }
    return result;
}
/**
 * 转半角字符
 */
function tosbc(str){
    var result = ;
    var len = str.length;
    for(var i=0;i    {
        var ccode = str.charcodeat(i);
        //全角与半角相差(除空格外):65248(十进制)
        ccode = (ccode>=0xff01 && ccode        //处理空格
        ccode = (ccode==0x03000)?0x0020:ccode;
        result += string.fromcharcode(ccode);
    }
    return result;
}
知识点
通过半角字符与全角字符的比较(ascii字符),我们可以发现,拥有全角与半角之分的ascii字符范围:0x20~0x7e。
比如:
符号 半角 全角 相差
# 0x0023 0xff03 0xfee0
? 0x003f 0xff1f 0xfee0
空格 0x0020 0x03000 0x2fe0
除了空格外,其他的字符中,全角与半角均相差:0xffe0
因此,在全角与半角的字符转换中,需要对空格特殊处理。
例如:
全角 = 半角 + 0xfee0
半角 = 全角  - 0xffe0
其它类似信息

推荐信息