日期:2014-05-16 浏览次数:20530 次
/**
* 获取字符串的特殊长度,一个汉字算单位一个长度,两个数字或字符算一个单位长度
* @param val
* @returns
*/
function getStringLengthForChinese(val) {
var str = new String(val);
var bytesCount = 0;
for (var i = 0 ,n = str.length; i < n; i++) {
var c = str.charCodeAt(i);
if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)) {
bytesCount += 1;
} else {
bytesCount += 2;
}
}
return (bytesCount/2).toFixed(0);
}
?
参考:http://blog.csdn.net/haotangyu/article/details/5393889,在此表示感谢。