分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

js 识别汉字和全角字符

发布时间:2023-09-06 01:24责任编辑:顾先生关键词:js

遇到个问题,需要检测输入框中的字符长度,如果是汉字,算作2个字节???

然后我就在想,我怎么去识别他是不是汉字呢???首先想到的可能就是 js 的 charCodeAt 方法, ASCII 码,然后就疑惑,那么怎么把汉字和 ASCII 码对应起来呢,想不通,遂百度,发现转发方法的人挺多,但都不说原理,难道都明白???原理还是我来说吧

比较通用的方法都是这样子:

代码
 ???????var a="好"; ???isChinese=!!a.match(/[^\x00-\xff]/ig); ???//或者 ???isChinese=!(a.charCodeAt()>=0&&a.charCodeAt()<=128); ???//或者直接求长度 ???var length=a.replace(/[^\x00-\xff]/g,"**").length;

你会发现三种方法里有两种都提到了 \x00-\xff ,好好看看就是\转译符,加上16进制数字,转成10进制就是,0-255,那么这里意思就很明显了,就是找出 ASCII 码超出 0-255 的字符,如果有,就认为是汉字或全角字符,算作两个字节,明白了?

ASCII 码我倒是去看了下,0-127是统一的,128-255 的好像规则不统一,不过好像也没有汉字和全角字符,但是这样用精不精确,不大明白,有空再去补补计算机基础,,,

js 识别汉字和全角字符

原文地址:http://www.cnblogs.com/jimmy-smith/p/7816098.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved