js 英文中文混截取 相同个数

function subString(str, n) {
  var r = /[^\x00-\xff]/g;
  var m;
  if (str.replace(r, '**').length > n) {
    m = Math.floor(n / 2);
    for (var i = m, l = str.length; i < l; i++) {
      if (str.substr(0, i).replace(r, '**').length >= n) {
        return str.substr(0, i) + '...';
      }
    }
  }
  return str;
}

 

subString(str, 162);

posted @ 2018-04-02 16:10  逍遥php  阅读(131)  评论(0编辑  收藏  举报