截取中英文字数,多了以...结束

54 阅读1分钟

const cutString = (str: string, len: number) => { let str_len = str.length; let cut_str_len = 0; let cut_str = ''; for (let i = 0; i < str_len; i++) { if (str.charCodeAt(i) > 255) { // >255是一个非ASCII字符,通常是一个中文字符或其他非英文字符 cut_str_len += 2; } else { cut_str_len++; } cut_str += str.charAt(i); if (cut_str_len > len) { return cut_str + '...'; } } return cut_str; }