Javascript 获取字符串字节数的多种方法


方法有很多,举两种:
第一种:(通过String对象的charCodeAt方法)

复制代码 代码如下:

String.prototype.getBytesLength = function() {
var length = 0;
for(i = 0;i < this.length; i++) {
iCode = this.charCodeAt(i);
if((iCode >= 0 && iCode <= 255) || (iCode >= 0xff61 && iCode <= 0xff9f)) {
length += 1;
} else {
length += 2;
}
}
return length;
}

第二种:(通过escape()方法转编码后判断)
复制代码 代码如下:

String.prototype.getBytesLength = function() {
var str = escape(this);
for(var i = 0, length = 0;i < str.length; i++, length++) {
if(str.charAt(i) == "%") {
if(str.charAt(++i) == "u") {
i += 3;
length++;
}
i++;
}
}
return length;
}

第三种写法:彻底无语了!
复制代码 代码如下:

String.prototype.getBytesLength = function() {
return this.replace(/[^\x00-\xff]/gi, "--").length;
}

我喜欢第三种,以上代码均测试通过
代码简单,不给出测试结果
px



相关阅读:
CSS经验:ul列表不正确使用的趋势
理解PHP5中static和const关键字的区别
WEB标准学习经验总结
Oracle表空间状态经验分享
线路分流自动跳转代码;希望对大家有用!
javascript 可以拖动的DIV(二)
树型结构列出指定目录里所有文件的PHP类
php5 apache 2.2 webservice 创建与配置(java)
php中的一个中文字符串截取函数
js中将多个语句写成一个语句的两种方法小结
MYSQL教程:数据表在系统中表现形式
linux shell (()) 双括号运算符使用
Exchange Server 2003故障诊断
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
快速导航

Copyright © 2016 phpStudy | 皖ICP备18014864号-4