JS判断字符串长度(中文2字符,英文1字符),可调整

原创 2016年08月30日 14:30:01

计算字符串长度(英文占1个字符,中文汉字占2个字符)。

方法一

String.prototype.gblen = function() { 
  var len = 0; 
  for (var i=0; i<this.length; i++) { 
    if (this.charCodeAt(i)>127 || this.charCodeAt(i)==94) { 
       len += 2; 
     } else { 
       len ++; 
     } 
   } 
  return len; 
}

方法二

function strlen(str){
    var len = 0;
    for (var i=0; i<str.length; i++) {
     var c = str.charCodeAt(i);
    //单字节加1
     if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)) {
       len++;
     }
     else {
      len+=2;
     }
    }
    return len;
}

方法三

var jmz = {};
jmz.GetLength = function(str) {
  ///<summary>获得字符串实际长度,中文2,英文1</summary>
  ///<param name="str">要获得长度的字符串</param>
  var realLength = 0, len = str.length, charCode = -1;
  for (var i = 0; i < len; i++) {
    charCode = str.charCodeAt(i);
    if (charCode >= 0 && charCode <= 128) realLength += 1;
    else realLength += 2;
  }
  return realLength;
};

方法四

var l = str.length;
var blen = 0;
for(i=0; i<l; i++) {
if ((str.charCodeAt(i) & 0xff00) != 0) {
blen ++;
}
blen ++;
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)

1. $('textarea#txtPrizeNote'); //表示textarea控件名称 2. 'span' 显示剩余字数的标签 HTML: 代码如下: [html] view plain...

jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)

1. $('textarea#txtPrizeNote'); //表示textarea控件名称  2. 'span' 显示剩余字数的标签  HTML:  代码如下: <textar...

计算字符串长度(关于日文字符) 正则表达式

项目要求: 计算一个字符串的长度(对日项目VB.NET) 以前的代码找不到了只能自己写一下了(找到了别人的代码觉得有点麻烦,没用) String.prototype.isBytes = f...

Java 判断中文字符串长度

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

C#中进行中英文字符截取(中文2个长度,英文1个)

前言最近项目有个需求,就是截取文本,区分中英文字符,中文算2个长度,英文算1个长度,截取后增加…,占3个长度(包括在限制长度内),需求不复杂,想要写出较好的方法,得稍稍费点心思,下面是笔者写的代码,仅...

判断是不是中文,判断手机号码,计算字符串长度

// 正则判断手机号码地址格式 - (BOOL)isMobileNumber:(NSString *)mobileNum { /** * 手机号码 * 移...

jquery实时监控textarea文本框中的字符(中文汉字及标点、英文字母及标点、数字)长度

jquery实时监控textarea文本框中的字符(中文汉字及标点、英文字母及标点、数字)长度 第一篇博文,献丑了。。

Java给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度.

//给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. //回文就是正反读都是一样的字符串,如aba, abba等 import java.util.Scanner...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)