本文转自 https://my.oschina.net/wolfx/blog/697968
用javascript计算length时不管是中文还是英文,都记为1,但是有时候我们希望中文计算成2.
下面这段代码实现的就是这个功能
var str = "string";
var str_len = str.length;
var str_length = 0;
var a;
for (var i = 0; i < str_len; i++) {
a = str.charAt(i);
str_length++;
if (escape(a).length > 4) {
//中文字符的长度经编码之后大于4
str_length++;
}
}