We are required to write a JavaScript function that takes in a string which contains English alphabet, for example −
const str = 'This is a sample string, will be used to collect some data';
The function should return an object containing the count of vowels and consonants in the string i.e. the output should be −
{ vowels: 17, consonants: 29 }Example
Following is the code −
const str = 'This is a sample string, will be used to collect some data';
const countAlpha = str => {
return str.split('').reduce((acc, val) => {
const legend = 'aeiou';
let { vowels, consonants } = acc;
if(val.toLowerCase() === val.toUpperCase()){
return acc;
};
if(legend.includes(val.toLowerCase())){
vowels++;
}else{
consonants++;
};
return { vowels, consonants };
}, {
vowels: 0,
consonants: 0
});
};
console.log(countAlpha(str));Output
This will produce the following output in console −
{ vowels: 17, consonants: 29 }