JavaScript 区分中英文字符的两种方法: 正则和charCodeAt()方法
正则无疑是最强大的判断各种条件的方法, 最近也在研习它, 虽然枯燥, 但仍有乐趣. 用它来判断一个双字节的中文字符也是轻而易举地. 而判断中文字符, 简单且执行效率高.
regExpForm.onblur=function(){
entryVal=this.value;
- entryLen=entryVal.length;
 - cnChar=entryVal.match(/[^\x00-\x80]/g);//利用match方法检索出中文字符并返回一个存放中文的数组
 - entryLen =cnChar.length;//算出实际的字符长度
 - }第二种方法是通过charCodeAt()方法判断Unicode码值, 若大于255即为中文字符, 它的执行效率没有正则高, 也没有正则简单.
- entryVal=this.value;
 - entryLen=entryVal.length;
 - for(var i=0;i<entryVal.length;i ){
 - if(entryVal.charCodeAt(i)>255){//遍历判断字符串中每个字符的Unicode码,大于255则为中文
 - cnArr.push(entryVal[i]);//讲符合条件的值插入到中文字符数组中
 - //注意一个小bug,push是向数组的末尾添加一个或多个元素并返回新的长度,所以未刷新的情况下反复blur会累加字符值
 - }
 - }
 - entryLen =cnArr.length;
 
 
JavaScript 区分中英文字符的两种方法: 正则和charCodeAt()方法的更多相关文章
- JS区分中英文字符的两种方法: 正则和charCodeAt()方法
		
1.正则regExpForm.onblur=function(){ entryVal=this.value; entryLen=entryVal.length; cnChar=entryVal.mat ...
 - jquery、javascript实现(get、post两种方式)跨域解决方法
		
一.实现get方式跨域请求数据 浏览器端 <script> $(document).ready(function(){ $.ajax({ url: "http://www.xxx ...
 - Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式
		
解析:Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式.面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是InputStream和Out ...
 - JavaScript对象属性访问的两种方式
		
JavaScript对象属性访问的两种方式 object.attribute object["attribute"] 例如: var employees = [ { "f ...
 - python-模块入门二(模块循环导入,区分python文件的两种用途,模块搜索路径,软件开发的目录规范)
		
一.模块的循环导入问题 run.py # import m1 # 第一次导入 m1.py # 错误示范 ''' print('正在导入m1') from m2 import y #第一次导入m2 x= ...
 - 调用init方法 两种方式 一个是浏览器方法 一个是 xml中手工配置(load-on-startup)
		
调用init方法 两种方式 一个是浏览器方法 一个是 xml中手工配置(load-on-startup)
 - Python 1-3区分Python文件的两种用途和模块的搜索路径
		
区分Python文件的两种用途 run.py文件: import m1 m1.py文件: def f1(): print('f1') def f2(): print('f2') #当文件被执行时__n ...
 - GIT将本地项目上传到Github(两种简单、方便的方法)
		
GIT将本地项目上传到Github(两种简单.方便的方法) 一.第一种方法: 首先你需要一个github账号,所有还没有的话先去注册吧! https://github.com/ 我们使用git需要先安 ...
 - php 两种获取分类树的方法
		
php 两种获取分类树的方法 1. /** * 获取分类树 * @param array $array 数据源 * @param int $pid 父级ID * @param int $level 分 ...
 
随机推荐
- [慢更]Sublime Text 快捷键及使用过的插件
			
整理自己常用的sublime text命令和插件 1.pretty json Json 快速格式化,免去url访问json站点的烦恼. 摘自:https://segmentfault.com/a/11 ...
 - xstream实现对象的序列化和反序列化(Java)
			
概述 最新整理Java方面XML序列化和反序列化的常用工具类,找到了dom4j和xstream.dom4j相对小巧,很好的解读xml:但是对于对象的xml序列化和反序列化,我还是比较喜欢xsteam( ...
 - 加载Assetbundle需要注意的地方
			
WWW:异步实现,手机上不能用于同步代码,需要监测其完成状态.不用www.dispose. CreateFromFile:阻塞,但是移动平台上面的路径格式有点坑,没时间看,不用. 以下两个方式需要先使 ...
 - matplotlib 3D数据-【老鱼学matplotlib】
			
直接上代码: import numpy as np import matplotlib.pyplot as plt # 导入显示3D的库 from mpl_toolkits.mplot3d impor ...
 - debian安装mongoDB
			
wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.2.tgz tar zxf mongodb-linux-i686-1.8.2.t ...
 - (Android UI)Android应用程序中资源:图片、字符串、颜色、布局等
			
Android系统设计采用代码和布局分离的设计模式,因此在设计Android应用程序时需要遵循该设计模式. “把非代码资源(如图片和字符串常量)和代码分离开来始终是一种很好的做法.”---<An ...
 - [LeetCode] Bricks Falling When Hit 碰撞时砖头掉落
			
We have a grid of 1s and 0s; the 1s in a cell represent bricks. A brick will not drop if and only i ...
 - Web版记账本开发记录(一)代码和功能展示
			
一丶基本机构 数据库截图 record表 年份表 index.jsp <%@ page language="java" contentType="text/html ...
 - Spark 实现wordcount
			
配置完spark之后,使用spark实现wordcount,这一部分完全参考<深入理解Spark:核心思想与源码分析> 依然使用hadoop wordcountTest的那几个txt文件 ...
 - mysql 5.7.21 解压版安装配置方法图文教程
			
引用:https://www.jb51.net/article/140951.htm 1.首先,你要下载MySQL解压版,下载地址,图解: 2.解压安装包,根据自己的喜好选择路径,我选择的路径是C:\ ...