js 截取指定长度字符串(区分中英文)

 function cutbytestr(str, len) {
            var str_length = 0;
            var str_len = 0;
            var str_cut;
            str_cut = new String();
            str_len = str.length;
            for (var i = 0; i < str_len; 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 < len) {
                return str;
            }
        }

 

posted @ 2020-08-31 10:12  a茶色  阅读(379)  评论(0编辑  收藏  举报