重复输入字符串的方法:例如
* ,5 *****
第一种,新建一个空字符串 然后通过for循环向空字符串中添加 返回新建的字符串
function repeat(str,num){ var Str = ''; if ( num > 0){ for(var i = 0; i<num ; i++){ Str += str; } } return Str; } console.log( repeat('1546',4));
第二种,通过调用自身的函数 arguments.callee方式
function repeat2(str,num){ if( num <= 0){ return ' ' }else { return str + arguments.callee(str,num-1); } } console.log( repeat2('*',15));
第三种,通过新建一个空的数组,然后通过join函数拼接字符串
function repeat3(str,num){ var Arr = []; if( num > 0 ){ for(var i =0; i < num ;i++){ Arr[i] = str; } } return Arr.join(''); } console.log( repeat3('*',15));
第四种,通过es6新的函数String.repeat(n) 来重复输出
function repeat4(str,num){ return num > 0 ? str.repeat(num):' '; } console.log( repeat4('*',9));
第五种,数组的逆向思维,我们传入num+1个空的字符串,然后拼接字符串,不过是用的str来拼接
function repeat5(str,num){ var Arr = new Array(num+1); return Arr.join(str); } console.log( repeat5('*',1));