中文长度为2,英文长度为1,当某段文字长度超过规定的数字时,截取并在后缀处加上省略号。
//字符串截取 function strLenDeal(str,len) { var tempStr, res, _strSection = function (strTemp, num) { var len = 0, tempArr = []; for (var i=0; i<strTemp.length; i++) { if (strTemp.charCodeAt(i)>127 || strTemp.charCodeAt(i)==94) { len += 2; } else { len ++; } if(len < num) { tempArr.push(strTemp.charAt(i)); } } if(len > num) { return tempArr.join('') + '...'; } return tempArr.join(''); }; if(str.length * 2 < len) { res = str; }else if(str.length > len){ tempStr = str.substr(0,len); res = _strSection(tempStr, len); }else { res = _strSection(str, len); } return res;}