最近项目上经常要用到计算字符串的长度的问题,有时需要按照byte进行计算长度,所以我就想在页面上用js实现,于是就到网上查了相关的资料,发现确实有很多的版本,这里给出两个比较好用的。
//方法一:逐个字符检查是否中文字符 String.prototype.getByteLen = function() { var len = 0; for (var i=0; i<this.length; i++) { if ((this.charCodeAt(i) & 0xff00) != 0) len ++; len ++; } return len; } //方法二:使用正则替换所有中文字符,然后再计算 getBLen = function(str) { if (str == null) return 0; if (typeof str != "string"){ str += ""; } return str.replace(/[^x00-xff]/g,"ab").length; }
用法我就不说了,相信你肯定会用,呵呵,下面给出测试示例:
参考出处:
http://www.jb51.net/article/48202.htm
http://www.jb51.net/article/90289.htm