как напечатать число в str и повторять его до заданной длины, например:
, если у нас есть num = 4
, а str target
, которое мы печатаем, равно 123
,
поэтому newStr
= должно быть 1231
, а если num = 6
, то newStr = 123123
newStr.length
должно быть похоже на num
function repeatIt(num) {
var arr = [],
markIt = true,
add = true,
hastag = true;
while (arr.length < num) {
var pushThis = "";
if (markIt) {
pushThis = "!";
markIt = false;
} else if (add) {
pushThis = "@";
add = false;
hastag = true;
} else if (hastag) {
pushThis = "#";
hastag = false;
markIt = true;
add = true;
};
arr.push(pushThis)
};
return num > 0 ? arr : "invalid input"
};
console.log(repeatIt(3))
// output : ['!','@','#'] 123
console.log(repeatIt(6));
// output : ['!','@','#','!','@','#'] 123 123
console.log(repeatIt(4))
// output : ['!','@','#','!'] 123 1
console.log(repeatIt(0)) // invalid input
выше приведен мой пример, и это мой код, я проверяю и изменяю параметр, он совпадает с желаемым выводом, но мои коды кажутся не чистыми и слишком длинными, есть ли способ написать код лучше для этого примера выше,