Repeat a string repeat a string
要求如下:
题目和要求都讲的很清楚了,我就直接怼方法了!
第一种 for( ) 循环:
function repeatStringNumTimes(str, num) {
var a = "";
if(num < 0){
return "";
}else{
for(var i = 0; i < num; i++){
a += str;
}
return a;
}
}
repeatStringNumTimes("abc", 3);
这种写法还可以化简:
function repeatStringNumTimes(str, num) {
var a = "";
for(var i = 0; i < num; i++){
a += str;
}
return a;
}
repeatStringNumTimes("abc", 3);
第二种 for( ) + String.concat( ):
function repeatStringNumTimes(str, num) {
var a = str;
if(num < 0){
return "";
}else{
for(var i = 1; i < num; i++){
str = str.concat(a);
}
return str;
}
}
repeatStringNumTimes("abc", 3);
这里要注意一下,for( ) 循环只循环了2次,第一种方法是循环了3次;原因在于第一种方法定义的 a = “”; 而第二种方法定义的 a = str;
第三种方法 for( ) + push( ) + join( ) :
function repeatStringNumTimes(str, num) {
var a = [];
if(num < 0){
return "";
}else{
for(var i = 0; i < num; i++){
a.push(str);
}
return a.join("");
}
}
repeatStringNumTimes("abc", 3);
怎么说呢!虽然实现了需求,但是太麻烦了!
第四种方法 while( ) 循环 :
function repeatStringNumTimes(str, num) {
var a = "";
while(num > 0){
a += str;
num--;
}
return a;
}
repeatStringNumTimes("abc", 2);
是不是看着很清爽!
版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。