js判断内容的长度,将中文英文或者中英文标点,转化为unicode编码进行判断,如此显示内容长度就一致了
/** 根据显示的长度,得到显示的内容 content:输入的内容,lengthSize显示的最大长度*/
function getShow(content, lengthSize){
var res = 0;
for(var i=0;i<content.length;i++){
//判断是不是有中文
if(content.charCodeAt(i) >=0 && content.charCodeAt(i) <=255){
res+=1;
}
else{
res+=2;//中文,相当于占两位字符
}
if(res >= lengthSize){//如果占的位数超过了最大显示的位数
return content.substring(0,i+1) + "...";
}
}
return content;//如果占的位数没有超过最大显示的位数
}
/** 根据显示的长度,得到显示的内容 content:输入的内容,lengthSize显示的最大长度*/
function getShow(content, lengthSize){
var res = 0;
for(var i=0;i<content.length;i++){
//判断是不是有中文
if(content.charCodeAt(i) >=0 && content.charCodeAt(i) <=255){
res+=1;
}
else{
res+=2;//中文,相当于占两位字符
}
if(res >= lengthSize){//如果占的位数超过了最大显示的位数
return content.substring(0,i+1) + "...";
}
}
return content;//如果占的位数没有超过最大显示的位数
}