Benjamin Semah
Benjamin Semah

Follow

Benjamin Semah

Follow

Repeat a String - JavaScript Solution & Walkthrough

(07/16) Learn how to solve coding challenges using FreeCodeCamp's curriculum.

Benjamin Semah's photo
Benjamin Semah
·Apr 7, 2022·

2 min read

Repeat a String - JavaScript Solution & Walkthrough
Play this article

Table of contents

  • 07/16 Repeat a String Repeat a String
  • Understanding the Challenge
  • Pseudocode
  • Solving the Challenge
  • Final Solution
  • Congratulations!

07/16 Repeat a String Repeat a String

Repeat a given string str (first argument) for num times (second argument). Return an empty string if num is not a positive number. For the purpose of this challenge, do not use the built-in .repeat() method.

function repeatStringNumTimes(str, num) {

  return str;
}

repeatStringNumTimes("abc", 3);

Credit: FreeCodeCamp.org

Understanding the Challenge

In this challenge, you'll be given a string str as first argument of the function. And a number num as second argument.

Your task here is to complete the function such that it returns str repeated multiple times. In the given example, str is given as "abc" and num is given as 3. In this case, the function is expected to return abcabcabc.

You've also been given two things to take note of. First, if num is not a positive number, return an empty. And secondly, "do not use the built-in .repeat() method."

Pseudocode

Given a string(str) and a number(num)
  Check if num is a positive number
    if num is not a positive number
    return an empty string
    if num is a positive number
    return str repeated num times

Solving the Challenge

First, we shall declare a variable and set it to an empty string. let's call it finalString

let finalString = ""

Next, we'll check whether num is positive or not. If num is not positive, that is num <= 0, we'll return finalString which is an empty string.

if (num <= 0) {
  return finalString
}

We can now add an else statement to handle a situation where num is positive. For a positive num, we'll need a loop. We'll initiate the loop at i = 1 and keep the loop running as long as i <= num.

For each iteration, concatenate the given string str to the current value of finalString

if (num <= 0) {
  return finalString
} else {
  for (let i = 1; i <= num; i++) {
    finalString += str;
  }

We return finalString after the loop is done.

  return finalString;

Our repeatStringNumTimes is now complete!

Final Solution

function repeatStringNumTimes(str, num) {
  let finalString = "";

  if (num <= 0) {
    return finalString;
  } else {
    for (let i = 1; i <= num; i++) {
      finalString += str
    }
    return finalString;
  }
}

repeatStringNumTimes("abc", 3); // abcabcabc

Congratulations!

You just cracked the seventh challenge in this series.

Cheers and happy coding!

 
Share this