thUBat wUBay (string)
add 'UB' before every vowel
by trentHarlem
HTML
<h1>
thUBat wUBay
</h1>
<label for='userInput'>Type Here:</label>
<input id='userInput' type='text'/>
<br><br>
<button id='button' type='submit'>
then Click Here
</button>
<p id='display'>
</p>
CSS
body {
font: 1.1em system-ui;
}
JavaScript
const display = document.getElementById('display')
const userInput = document.getElementById('userInput')
const button = document.getElementById('button')
function work(str) {
// find vowel AND insert 'UB'
const vowels = 'aeiou'
let firstVow = str.match(/[aeiou]/g) || 0;
let vowel = str.indexOf(firstVow[0]);
return str.slice(0, vowel) + 'UB' + str.substring(vowel);
//return str.substring(vowel) + str.substring(0, vowel) + "ay";
//}
}
/* const work = (str) => {
const vowels = ['aeiou'];
// console.log(str);
//console.log(vowels);
const strSplit = str.split('');
//console.log(strSplit);
console.log(str.search(vowels))
//strSplit.forEach((char, i) => {
if (str.search(vowels) {
//let start = strSplit.indexOf(char)
//strSplit.splice(i, 0, 'U', 'B')
//return strSplit.join('');
}
//})
return strSplit.join('');
}
*/
function work2(str) {
// let vowels = 'uaeiou'
let vowels = /[aeiou]/g
let output
for (let i = 0; i < str.length; i++) {
for (let j = 0; j < vowels.length; j++) {
//if (str[i] == vowels[j]) {
if (str[i] == vowels) {
output = str.slice(0, i) + 'UB' + str.substring(i);
}
}
}
return output
}
function ubub(str) {
// get string from input or func and create array of words
str = userInput.value || str
userInput.value = ''
// const vowels = ['a', 'e', 'i', 'o', 'u'];
const arr = str.split(' ');
display.innerHTML = arr.map(word => work(word)).join(' ');
console.log(arr.map(word => work(word)).join(' '));
return arr.map(word => work(word)).join(' ')
}
ubub('that way')
//ubub('van halen')
function ubub2(str) {
// get string from input or func and create array of words
str = userInput.value || str
userInput.value = ''
// const vowels = ['a', 'e', 'i', 'o', 'u'];
const arr = str.split(' ');
display.innerHTML = arr.map(word => work2(word)).join(' ');
console.log(arr.map(word => work2(word)).join(' '));
return arr.map(word =>...