判断字符串长度的方法(中文2个字符,英文1个字符)

//判断字符串长度的方法(中文2个字符,英文1个字符)

// export function getCharCodeLength(str:any) {

//   const len = [...str].reduce((pre, cur) => {

//     return pre + (cur.charCodeAt() > 255 ? 2 : 1);

//   }, 0);

//   return len;

// }

//判断字符串长度的方法(中文2个字符,英文1个字符)

export function getCharCodeLength(str:any,len:number){

  let str_length = 0;

  let str_len = 0;

  let str_cut = new String();

  str_len = str.length;

   for(let i = 0;i

      let a = str.charAt(i);

       str_length++;

       if(escape(a).length > 4){

           //中文字符的长度经编码之后大于4

           str_length++;

       }

       str_cut = str_cut.concat(a);

       if(str_length>=len){

     //达到目标长度,即为字符串加上省略号并返回

          str_cut = str_cut.concat("...");

          return str_cut;

       }

   }

  //如果字符串长度小于需要裁切的长度,直接返回

   if(str_length

    return  str;

   }

}

你可能感兴趣的:(前端,javascript,html)