主要介绍js判断字符串长度的5个方法,并且区分中文和英文,需要的朋友可以参考下
目的:计算字符串长度(英文占1个字符,中文汉字占2个字符)
方法一:
代码如下:
string.prototype.gblen = function() {
var len = 0;
for (var i=0; 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 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) { /// ///要获得长度的字符串 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 if ((str.charcodeat(i) & 0xff00) != 0) { blen ++; } blen ++; } 方法五: 把双字节的替换成两个单字节的然后再获得长度 代码如下: getblen = function(str) { if (str == null) return 0; if (typeof str != string){ str += ; } return str.replace(/[^x00-xff]/g,01).length; }