Javascript 获取字符串字节数的多种方法_javascript技巧
程序员文章站
2022-04-19 09:26:53
...
方法有很多,举两种:
第一种:(通过String对象的charCodeAt方法)
String.prototype.getBytesLength = function() {
var length = 0;
for(i = 0;i iCode = this.charCodeAt(i);
if((iCode >= 0 && iCode = 0xff61 && iCode length += 1;
} else {
length += 2;
}
}
return length;
}
第二种:(通过escape()方法转编码后判断)
String.prototype.getBytesLength = function() {
var str = escape(this);
for(var i = 0, length = 0;i 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
第一种:(通过String对象的charCodeAt方法)
复制代码 代码如下:
String.prototype.getBytesLength = function() {
var length = 0;
for(i = 0;i iCode = this.charCodeAt(i);
if((iCode >= 0 && iCode = 0xff61 && iCode length += 1;
} else {
length += 2;
}
}
return length;
}
第二种:(通过escape()方法转编码后判断)
复制代码 代码如下:
String.prototype.getBytesLength = function() {
var str = escape(this);
for(var i = 0, length = 0;i 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
下一篇: 怎样传递数组参数至后台
推荐阅读
-
了解在JavaScript中将值转换为字符串的5种方法
-
JavaScript中将值转换为字符串的五种方法总结
-
重温JavaScript获取CSS样式的方法(兼容各浏览器)
-
举例讲解JavaScript中将数组元素转换为字符串的方法
-
PHP中的多行字符串传递给JavaScript的两种方法
-
Python中还原JavaScript的escape函数编码后字符串的方法
-
js截取第一个字符串(javascript截取字符串的方法)
-
详解JavaScript中数组和字符串的lastIndexOf()方法使用
-
JavaScript实现替换字符串中最后一个字符的方法
-
JavaScript和JQuery获取DIV值的方法示例