Skip to content

Instantly share code, notes, and snippets.

@JamesMGreene
Created December 12, 2017 17:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JamesMGreene/d72159c07ba9d111c376123d8152886a to your computer and use it in GitHub Desktop.
Save JamesMGreene/d72159c07ba9d111c376123d8152886a to your computer and use it in GitHub Desktop.
Generic random alphabetical strings with JavaScript
var validChars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
var validCharsUpperBound = validChars.length - 1;
function randomInt(lower, upper) {
return lower + Math.floor(Math.random() * (upper - lower + 1))
}
function randomLetter() {
return validChars[randomInt(0, validCharsUpperBound)];
}
function randomString() {
var randomLength = randomInt(0, 32);
var randomLetters = [];
for (var r = 0; r <= randomLength; r++) {
randomLetters.push(randomLetter());
}
return randomLetters.join('');
}
var stringsToTest = [];
for (var s = 0; s < 100; s++) {
stringsToTest.push(randomString());
}
// Add duplicates?
for (var d = 0; d < 5; d++) {
var duplicateIndex = randomInt(0, stringsToTest.length - 1);
stringsToTest.push(stringsToTest[duplicateIndex]);
}
console.log(JSON.stringify(stringsToTest, null, 2));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment