标签:返回值 封装 默认 调用 col 串处理 方法 char count
1 function getStrBytes(str){
2 str = str.toString();
3 var strLen = 0;
4 for (let s = 0; s < str.length; s++) {
5 if(str.charCodeAt(s) >= 255){
6 // 中文,字节为2.
7 strLen += 2;
8 }else{
9 // 非中文,字节为1.
10 strLen += 1;
11 }
12 }
13 return strLen;
14 }
简化写法:(思路是,初始化时,默认就把字符串的长度等于字节长度。遇到中文的时候,字节长度+1)
1 function getStrBytes(str){
2 str = str.toString();
3 var strLen,
4 count;
5 strLen = count= str.length;
6 for (let s = 0; s < strLen; s++) {
7 if(str.charCodeAt(s) >= 255)
8 count ++;
9 }
10 return count;
11 }
调用方法:
getStrBytes("gjf32425");
这个功能很常见,在评论区内一般会限制输入文字个数,
多用于textarea右下角的数字提示器功能,提示用户输入的文字个数。
利用上边计算出的字符串的字节,除以2取整就可以粗略当做用户的字符个数。
1 function getStrNum(str){
2 return Math.ceil(getStrBytes(str)/2);
3 }
调用:
getStrNum("继续努力加油!!耶!");
标签:返回值 封装 默认 调用 col 串处理 方法 char count
原文地址:https://www.cnblogs.com/padding1015/p/9825160.html