Skip to content

Instantly share code, notes, and snippets.

@KevinTCoughlin
Created October 26, 2015 21:26
Show Gist options
  • Select an option

  • Save KevinTCoughlin/b953d56add238a3a0b2b to your computer and use it in GitHub Desktop.

Select an option

Save KevinTCoughlin/b953d56add238a3a0b2b to your computer and use it in GitHub Desktop.
var consonants = 'bcdfghjklmnpqrstvwxyz'.split('');
var vowels = 'aeiou'.split('');
var CONSONANT = 'c';
var VOWEL = 'v';
var input = ['cvcvcc', 'CcvV', 'cvcvcvcvcvcvcvcvcvcv'];
function generateWord(pattern) {
return pattern.split('').map(function(ch, idx, arr) {
var isUpperCase = ch === ch.toUpperCase();
var char = ch.toLowerCase();
if (char === CONSONANT) {
var randomChar = consonants[Math.floor(Math.random() * consonants.length)];
return isUpperCase ? randomChar.toUpperCase() : randomChar;
} else if (char === VOWEL) {
var randomChar = vowels[Math.floor(Math.random() * vowels.length)];
return isUpperCase ? randomChar.toUpperCase() : randomChar;
}
}).join('');
}
console.log(input.map(generateWord));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment