【代码】JavaScript按长度和换行分割字符串

2020-11-21 17:28:05  阅读 3359 次 评论 0 条

公司项目的一个需求,要保留用户在textarea上输入的原来样式

这里写的只是按数量分割,没有换行 在这里啦=_=

废话不多说,直接上代码

function ww_split_bylength(str, length) {

    var tt = /\n/;
    var arr = [];
    
    var tmpstr = "";
    var ass = str.split('');
    if (str.length >= length) {
        for (var i = 0; i < ass.length; i++) {
            var curr = ass[i];
            if (curr != "") {
                tmpstr += curr;
                if (tt.test(curr)) {
                    //有换行直接push
                    arr.push(tmpstr);
                    tmpstr = "";
                }

                if (tmpstr.length >= length) {
                    arr.push(tmpstr);
                    tmpstr = "";
                } else if (i == ass.length - 1) {
                    arr.push(tmpstr);
                    tmpstr = "";
                }

            }

        }

    } else {
        for (var i = 0; i < ass.length; i++) {
            var curr = ass[i];
            if (curr != "") {
                tmpstr += curr;
                if (tt.test(curr)) {
                    //有换行直接push
                    arr.push(tmpstr);
                    tmpstr = "";
                }

                if (tmpstr.length >= length) {
                    arr.push(tmpstr);
                    tmpstr = "";
                } else if (i == ass.length - 1) {
                    arr.push(tmpstr);
                    tmpstr = "";
                }



            }

        }

    }



    return arr;
}

调用

ww_split_bylength("我是一个标题呀标题呀标题呀我是一个标题呀标题呀标题呀",16);



微信扫码查看本文
本文地址:https://www.yangguangdream.com/?id=2114
版权声明:本文为原创文章,版权归 编辑君 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?