微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JS 判断字符串字节长度的简单示例数字英文长度为1,中文为2

感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
你早晚会用到的,用CSS来控制文字长度毕竟不是什么需求都能满足,现在后台也不管字符长度截取了,只能用JS来截取字符串了。

// 来自:编程之家 jb51.cc(jb51.cc)
/**
* 返回字符的字节长度(汉字算2个字节)
* @param {string}
* @returns {number}
*/
var getByteLen = function (val) {
var len = 0;
for (var i = 0; i < val.length; i++) {
if (val[i].match(/[^\x00-\xff]/ig) != null) //全角
len += 2;
else
len += 1;
};
return len;
}
var sAbc = ‘1a啊啊22飞3地方a’;
var ol = getByteLen(sAbc);
alert(‘直接用length取得的字节长度:’ + sAbc.length);
alert(‘通过getByteLen()方法取得的字节长度:’ + ol);

通过上面的方法就可以继续写一个截取指定长度的新字符串了,截取掉的部分用…补全:

// 来自:编程之家 jb51.cc(jb51.cc)
/**
* 返回字符的字节长度(汉字算2个字节)
* @param {string}{number}
* @returns {string} +’…’
*/
var cutStrForNum = function (str,num) {
var len = 0;
for (var i = 0; i < str.length; i++) {
if (str[i].match(/[^\x00-\xff]/ig) != null) //全角
len += 2;
else
len += 1;
}
if (len >= num) {
newStr = str.substring(0,num) + …;
}
return newStr;
}
var sAbc = ‘1a啊啊22飞3地方a’;
alert(cutStrForNum(sAbc,3));

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐