Open In App

JavaScript Program for Generating a String of Specific Length

Last Updated : 06 Oct, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we are going to discuss how can we generate a string having a specific length. You might encounter many situations when working with JavaScript where you need to produce a string with a specified length. This could be done for a number of reasons, including generating passwords, unique IDs, or formatting data for display.

Using For Loop

  • In this approach, we initialize an empty string result and use a loop to generate random characters and concatenate them to the result until the desired length is achieved.
  • Create a characters array containing all the characters that you allow to be in your string.
  • Create a variable “str” to store your string & iterate “n” times.
  • Inside the for loop generate a random index using Math.random() and store it in a variable.
  • Select the character present at the previously generated random index from your character array and append it to the previously created “str”.
  • After the loop ends you will have your “n” length string in the variable “str”.

Example: This example shows the use of the above-explained approach.

Javascript




function getString(n) {
    let str = '';
    const characters = 
        'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    const charLen = characters.length;
  
    for (let i = 0; i < n; i++) {
  
        // Generating a random index
        const idx = Math.floor(Math.random() * charLen);
  
        str += characters.charAt(idx);
    }
  
    return str;
}
  
const result = getString(10);
console.log(result);


Output

qPyRFuEHGB

Using String.prototype.repeat()

  • Here, we select a random character from the given character set and use the repeat() method to repeat it the desired number of times.
  • Create a characters array containing all the characters that you allow to be in your string.
  • Generate a random index using Math.random() and store it in a variable.
  • Select the character present at previously generated random index from your character array. And use repeat() method to repeat the character “n” times.

Example: This example shows the use of the above-explained approach.

Javascript




function getString(n) {
    const characters = 
        'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    const charLen = characters.length;
  
    // Generating a random index
    const idx = Math.floor(Math.random() * charLen);
  
    // Using above generated random index
    // and extracting the corresponding 
    // character from "characters" array
    const ch = characters.charAt(idx);
  
    // Using repeat method to repeat
    // the character "n" times.
    return ch.repeat(n);
}
  
const result = getString(10);
console.log(result);


Output

QQQQQQQQQQ

Using Array Manipulation

  • In this approach, we push random characters into an array and then use the join() method to convert the array into a string.
  • Create a characters array containing all the characters that you allow to be in your string.
  • Create an empty array “resultArray” to store characters. And iterate it “n” times.
  • Inside the for loop generate a random index using Math.random() and store it in a variable.
  • Select the character present at previously generated random index from your character array and push it in the previously created “resultArray”.
  • After the loop ends you will have your “n” characters stored in your array “resultArray”. Use join() method to join all the characters in the array as a string.

Example: This example shows the use of the above-explained approach.

Javascript




function getString(n) {
    const characters = 
        'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    const charLen = characters.length;
  
    const resultArray = [];
  
    for (let i = 0; i < n; i++) {
      
        // Generating a random index 
        const idx = Math.floor(Math.random() * charLen);
  
        // Pushing the corresponding
        //  character to the array
        resultArray.push(characters.charAt(idx));
    }
  
    // Joining all the characters of the array
    return resultArray.join('');
}
  
const result = getString(10);
console.log(result);


Output

QwZMolRRqi


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads