为 String 扩展原型方法 byteLength(),该方法将根据每个字符编码,判断当前字符是单字节还是双字节,然后统计字符串的字节长度。
String.prototype.byteLength = function() {
var length = 0;
Array.from(this).map(function(char){
if(char.charCodeAt(0)>255) {//字符编码大于255,说明是双字节字符
length += 2;
}else {
length++;
}
});
return length;
}
测试: