将字符串按长度截取成数组

该函数`textByteLength`接收一个字符串`text`和一个整数`num`作为参数,用于计算字符串按指定字节数显示时的行数和每行内容。它遍历字符串,判断每个字符的字节长度,若超过单字节,则增加两字节计数。当总字节长度超过一行的限制时,将当前子串推入结果数组并开始新的行。最终返回包含分割后的字符串数组和行数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     /**
	 * @param string text 为传入的文本
	 * @param int num 为单行显示的字节长度
	 * @return array 
	 */
        function textByteLength(text, num) {

            let strLength = 0;
            let rows = 1;
            let str = 0;
            let arr = [];
            for (let j = 0; j < text.length; j++) {
                // console.log(text.charCodeAt(j));
                if (text.charCodeAt(j) > 255) {
                    // console.log('if');
                    strLength += 2;
                    if (strLength > rows * num) {
                        // console.log(3333);
                        // strLength++;
                        console.log(strLength);
                        arr.push(text.slice(str, j));
                        str = j;
                        rows++;
                    }
                } else {
                    // console.log('else'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是来写bug的吧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值