How to Repeat a String in JavaScript

Last updated on Sep 5, 2020 by Suraj Sharma

ES6 already has a built-in method String.repeat() to repeat a string for N number of times. It is not supported in older browsers.

In this article, you are going to learn four ways to repeat a string in JavaScript.

So, let’s get started.

Repeat a string for N number of times

1. Using a built-in method

String.repeat() method was introduced in ES6 and all the modern browsers support it,

repeat(count) accepts an argument 'count', which should be greater than or equal to zero and less than +Infinity.

console.log('Hello '.repeat(4)); // 'Hello Hello Hello Hello '
console.log('Hello '.repeat(-1)); // error: Uncaught RangeError: Invalid count value
console.log('Hello '.repeat(0)); // ''

2. Using a Recursive function

We are going to create a recursive function to repeat a string N number of times.

function repeatString(string, times) {
  if (times < 0)
    throw new RangeError('Number must be greater equal than zero');
  if (times === 0) 
    return '';
  if (times === 1)
    return string;
  return string+repeatString(string, times-1);

console.log(repeatString('Hello ', 2)) // 'Hello Hello '
console.log(repeatString('Hello ', 0)) // ''
console.log(repeatString('Hello ', -1)) // error: Uncaught RangeError: Number must be greater than or equal to zero

3. Using a Array.join() method

This approach is about creating an empty array of length N+1 and then joining the array elements with the string to be repeated.

function repeatString(string, times) {
  return new Array(times+1).join(string);

console.log(repeatString('Hello ', 4)); // 'Hello Hello Hello Hello '

4. Using a For Loop

This solution requires you to loop for N times and concat the string on each iteration.

function repeatString(string, times) {
  let str = times ? string : '';
  for (let i=1; i<times;i++) {
    str += string
  return str;

console.log(repeatString('Hello ', 0)) // ''
console.log(repeatString('Hello ', 3)) // 'Hello Hello Hello '

Related Solutions

Rate this post

Suraj Sharma is a Full Stack Software Engineer. He holds a B.Tech degree in Computer Science & Engineering from NIT Rourkela.