先上代码,再说废话^_^
复制代码 代码如下:
/**
* 转全角字符
*/
function toDBC(str){
var result = "";
var len = str.length;
for(var i=0;i<len;i++)
{
var cCode = str.charCodeAt(i);
//全角与半角相差(除空格外):65248(十进制)
cCode = (cCode>=0x0021 && cCode<=0x007E)?(cCode + 65248) : 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<len;i++)
{
var cCode = str.charCodeAt(i);
//全角与半角相差(除空格外):65248(十进制)
cCode = (cCode>=0xFF01 && cCode<=0xFF5E)?(cCode – 65248) : cCode;
//处理空格
cCode = (cCode==0x03000)?0x0020:cCode;
result += String.fromCharCode(cCode);
}
return result;
}
/**
* 转全角字符
*/
function toDBC(str){
var result = "";
var len = str.length;
for(var i=0;i<len;i++)
{
var cCode = str.charCodeAt(i);
//全角与半角相差(除空格外):65248(十进制)
cCode = (cCode>=0x0021 && cCode<=0x007E)?(cCode + 65248) : 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<len;i++)
{
var cCode = str.charCodeAt(i);
//全角与半角相差(除空格外):65248(十进制)
cCode = (cCode>=0xFF01 && cCode<=0xFF5E)?(cCode – 65248) : cCode;
//处理空格
cCode = (cCode==0x03000)?0x0020:cCode;
result += String.fromCharCode(cCode);
}
return result;
}
知识点
通过半角字符与全角字符的比较(ASCII字符),我们可以发现,拥有全角与半角之分的ASCII字符范围:0x20~0x7E。
比如:
符号半角全角相差
#0x00230xFF030xFEE0
?0x003F0xFF1F0xFEE0
空格0x00200x030000x2FE0
例如:
PS:快网idc推荐一款在线全角半角转换工具https://tool.zzvips.com/t/fullhalf/,有需要的朋友可以参考下。
相关文章
猜你喜欢
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
- 个人网站服务器域名解析设置指南:从购买到绑定全流程 2025-06-10
- 个人网站搭建:如何挑选具有弹性扩展能力的服务器? 2025-06-10
- 个人服务器网站搭建:如何选择适合自己的建站程序或框架? 2025-06-10