一个汉字是两个字节。
可能有人会想为什么1个字母是1个字节,而1个汉字需要2个字节。主要可以是说我们中文汉字比字母多很多,使用字母那套编码无法兼容完我们的汉字。
一个字节是8个位(bit),最多可以表示256个对应字符(2的8次方),如果是2个字节则是16个位(bit),最多可以表示65536个对应字符(2的16次方)。同时也是为了计算机系统原有电子逻辑,则采用2个字节的汉字编码。
不同的编码方式,汉字所占的字符是不同的。
国家标准GB2312: 一个汉字=2个字节
UTF-8:一个汉字=3个字节
一个汉字是一个字符,两个或三个字节。
在判断的时候,可以注意下,看判断是字符还是字节。字节是存储的时候所占得大小。
例如,在做用户名判断的时候,用户名的规则是“2到6个汉字或者4到18个英文字符”;
在写他 匹配规则的时候,以下代码:
if(name.length<2 ||name.length>18|| !name.match(/^[u4e00-u9fa5]{2,6}|[A-Za-z0-9]{4,18}$/i)){
alert("会员名格式不正确!请重新输入");
$("#nametips").html("2-6个中文汉字以内,4-18个英文字母数字以内");
return false;
}
若是name.length<4的话,就会提示页面错误。
在这里的汉字是按照一个字符算的。