当前位置:首页 > 日记 > 正文

JS全角与半角转化实例 | 分享

JS全角与半角转化实例 | 分享

最近在做PC端网站的页面的一个表单校验,需要把全角输入转化成半角符号。之前没有了解过这些编码的知识,还是得Google一下查查资料,故简单总结一下。

什么是全角、半角

传统上,英语或拉丁字母语言使用的电脑系统,每一个字母或符号,都是使用一字节的空间(一字节由8比特组成,共256个编码空间)来储存;而汉语、日语及韩语文字,由于数量大大超过256个,故惯常使用两字节来储存一个字符。在使用等宽字体(如DOS、部分文字编辑器等)的环境下,中日韩文字此时占据两倍于西文字符的显示宽度。所以,中、日、韩等文字称为全角字符,相比起来,拉丁字母或数字就称为半角字符。有时为了使字体看起来齐整,英文字母、数字及其他符号也由原来只占一个字空间,改为占用两个字的空间显示、使用两个字节储存的格式。(维基百科)

转化原理

全角空格unicode编码为12288,半角空格为32

其他字符半角(33-126)与全角(65281-65374)的unicode编码对应关系是:均相差65248

全角转半角

function ToCDB(str) {    var tmp = "";    for (var i = 0; i < str.length; i++) {      if (str.charCodeAt(i) > 65248 && str.charCodeAt(i) < 65375) {        tmp += String.fromCharCode(str.charCodeAt(i) - 65248);      }      else {        tmp += String.fromCharCode(str.charCodeAt(i));      }    }    return tmp  }

半角转全角

function ToDBC(txtstring) {    var tmp = "";    for (var i = 0; i < txtstring.length; i++) {      if (txtstring.charCodeAt(i) == 32) {        tmp = tmp + String.fromCharCode(12288);      }      if (txtstring.charCodeAt(i) < 127) {        tmp = tmp + String.fromCharCode(txtstring.charCodeAt(i) + 65248);      }    }    return tmp;  }

以上这篇JS全角与半角转化实例(分享)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

相关文章

ps怎么设计果汁饮料杯图标?

ps怎么设计果汁饮料杯图标?

图标,果汁,电脑软件,ps,想要绘制一杯甜甜的饮品图标,该怎么绘制呢?我们可以使用ps中的绘图工具绘制,下面我们就来看看详细的教程。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、先用圆形工具绘制一个…

利用原生JS与jQuery实现数字线性变

利用原生JS与jQuery实现数字线性变

线性,数字,原生,动画,电脑软件,前言大家应该都有所体会,在一些数据展示的专题页里,有时候希望数字能动态从某一个数变化到另一个数,以此来吸引用户眼球,突出数据。于是有了下文。在这里,我用了两种方式:一种是原生的JavaScript,另一种是jQuery插件…

jQuery dateRangePicker插件使用方

jQuery dateRangePicker插件使用方

插件,使用方法,详解,电脑软件,jQuery,jQuery dateRangePicker插件使用总结。版本说明:当前使用版本:2.1.25特别说明:版本不同,部分api可能会发生变化,需要引起重点关注效果图关键代码片段$("#dateTimeRange span").html(moment().subtract(1, …

javascript 取小数点后几位几种方

javascript 取小数点后几位几种方

点后,小数,几位,几种方法,电脑软件,javascript 取小数点后几位方法总结Javascript取float型小数点后两位,例22.123456取成22.12,如何做?1.通过substring截取。function getnum(){var num = 22.123456;var result = num.substring(0,s.indexOf…

EasyUI Tree树组件无限循环的解决

EasyUI Tree树组件无限循环的解决

无限循环,解决方法,组件,电脑软件,EasyUI,在学习jquery easyui的tree组件的时候,在url为链接地址的时,发现如果最后一个节点的state为closed时,未节点显示为文件夹,单击会重新加载动态(Url:链接地址)形成无限循环。如:tree.json[{ "id":1, …

ppt2010怎么设置上下标ppt2010设置

ppt2010怎么设置上下标ppt2010设置

设置,下标,步骤,标的,电脑软件,  ppt说起来不是很难,但多少人将它学到精髓就不知道了,俗话说:书到用时方恨少,我们平时可能觉得ppt很简单哦,都会。但有时候自己很忙时,突然有个地方不会了,怎么办?自己肯定急的像一个热窝的蚂蚁,所以我们学什么东…

如何给Word2010文档加密及取消加密

如何给Word2010文档加密及取消加密

加密,文档,取消,电脑软件,  当我们做完一篇文档后,有没有想过要给它加密呢?这样可以保护文档的内容,不容易泄露出去。那么麻烦的时候,也可以取消加密。以下是小编为您带来的关于给Word2010文档加密及取消加密,希望对您有所帮助。给Word2010文…

PS笔刷绘制蜡笔肌理插画

PS笔刷绘制蜡笔肌理插画

绘制,肌理,插画,蜡笔,笔刷,这篇教程教的PS鼠绘学习者们使用PS笔刷模拟蜡笔肌理效果,教程难度一般,但是对于学习PS鼠绘特别是笔刷的运用是非常好的,推荐过来和的朋友们一起分享,一起学习了,先来看看最终的效果图吧:12 阅读全文教程结束,以上就是PS…

jQuery制作旋转效果

jQuery制作旋转效果

效果,电脑软件,jQuery,以前用JQuery写过一个纵深方向上的图片旋转效果,在这里拿出来跟大家分享下,贴上一张图片看看效果是如何的:其实现原理并不复杂,在数学上只用到了其中的正弦函数,制作过程大致如下:(1)先定义好图片旋转的半径(2)图片旋转的过程…

怎样将word转换成PPT格式

怎样将word转换成PPT格式

步骤,转换成,格式,电脑软件,word,  在日常的工作生活中,我们经常需要借助于Word办公软件来编辑、打印文档材料。许多时候,我们可能还需要将已经编辑好的Word文档打印出来,然后制做成PowerPoint格式演示文稿,以便进行演示。不过,我们在Powe…

微信读书如何添加本地文件?

微信读书如何添加本地文件?

本地文件,电脑软件,  微信读书是一款可以看到朋友圈好友阅读时间及最近阅读书籍的应用软件,很多下载了该应用的朋友们都不清楚怎么将本地图书导入到微信读书里面,针对此问题,本文就为大家进行解答。微信读书如何添加本地文件  微信读书刚…

微信小程序中使用javascript 回调

微信小程序中使用javascript 回调

回调函数,程序,电脑软件,微信小,javascript, 微信小程序中使用javascript 回调函数回调函数原理:我现在出发,到了通知你” 这是一个异步的流程,“我出发”这个过程中(函数执行),“你”可以去做任何事,“到了”(函数执行完毕)“通知你”(回调)进行之后…