/**
* 得到字符串的字符长度(一个汉字占两个字符长)
*/
function getBytesLength(str) {
// 在GBK编码里,除了ASCII字符,其它都占两个字符宽
return str.replace(/[^x00-xff]/g, 'xx').length;
}
/**
* 根据字符长来截取字符串
*/
function subStringByBytes(val, maxBytesLen) {
var len = maxBytesLen;
var result = val.slice(0, len);
while(getBytesLength(result) > maxBytesLen) {
result = result.slice(0, --len);
}
return result;
}
含中文字符的字符串长度校验
最新推荐文章于 2025-04-20 13:03:50 发布
本文介绍了一种在GB2312/GBK编码下计算字符串长度(包括正确处理中文字符)的方法,并提供了一个根据指定长度截取字符串的实用函数。这两个函数对于处理包含中文的文本非常有用。
2032

被折叠的 条评论
为什么被折叠?



