var arr = new Array();
var str = "abc测试标题,测试标题测试标题测试标题测试标题测试标题测试标题测试标题测试30标题测试标题测试标题测试标题测试标题测试标题测试标题测(测试标60题)试标题测试标题测试标题测试标题测试标题测试标题测试标题测试90标题测试标题测试标题测试标题题题题";
var n = 30;
function mk(strs){
var len = Math.floor(strs.length/n);
//for (var i = 1; i <= len; i++) {
var sliStr = strs.slice(0,n);
arr.push(sliStr);
if(strs.slice(n).length > n){
mk(strs.slice(n));
}else{
arr.push(strs.slice(n));
}
//}
}
mk(str);
var newStr = arr.join('\n');
alert(newStr);

解决方案 »

  1.   

    function test(str){
    var ar = [];
    var l = str.length;
    var i = 0;
    var lr = 0;

    for( i ; i < l; i++ ){

    if( i % 30 == 0 ){
    lr = i;
    ar.push(str.slice(lr,i+30))
    }
    }
    return ar.join('\n');
    }
    console.log(test(str))
      

  2.   

    s = 'abc测试标题,测试标题测试标题测试标题测试标题测试标题测试标题测试标题测试30标题测试标题测试标题测试标题测试标题测试标题测试标题测(测试标60题)试标题测试标题测试标题测试标题测试标题测试标题测试标题测试90标题测试标题测试标题测试标题';
    r = s.match(/.{30}/g).join("\n");
    alert(r);