Vowel/Consonant Check in JavaScript

toLowerCase() first or 'A' looks like a consonant. Y is a consonant here.

BeginnerConditional ProgramsExample 3 of 5
vowel-consonant-check.js
1// Method 1: Using if-else
2function checkVowelConsonant(char) {
3 // Convert to lowercase for case-insensitive check
4 char = char.toLowerCase();
5
6 if (char === 'a' || char === 'e' || char === 'i' || char === 'o' || char === 'u') {
7 return "Vowel";
8 } else if (char >= 'a' && char <= 'z') {
9 return "Consonant";
10 } else {
11 return "Not a letter";
12 }
13}
14
15console.log("a:", checkVowelConsonant('a'));
16console.log("B:", checkVowelConsonant('B'));
17console.log("z:", checkVowelConsonant('z'));
18console.log("5:", checkVowelConsonant('5'));
19
20// Method 2: Using array includes()
21function checkVowelConsonant2(char) {
22 char = char.toLowerCase();
23 const vowels = ['a', 'e', 'i', 'o', 'u'];
24
25 if (vowels.includes(char)) {
26 return "Vowel";
27 } else if (char >= 'a' && char <= 'z') {
28 return "Consonant";
29 } else {
30 return "Not a letter";
31 }
32}
33
34console.log("\nUsing includes():");
35console.log("e:", checkVowelConsonant2('e'));
36console.log("k:", checkVowelConsonant2('k'));
37
38// Method 3: Using switch statement
39function checkVowelConsonant3(char) {
40 char = char.toLowerCase();
41
42 switch(char) {
43 case 'a':
44 case 'e':
45 case 'i':
46 case 'o':
47 case 'u':
48 return "Vowel";
49 default:
50 if (char >= 'a' && char <= 'z') {
51 return "Consonant";
52 } else {
53 return "Not a letter";
54 }
55 }
56}
57
58console.log("\nUsing switch:");
59console.log("i:", checkVowelConsonant3('i'));
60console.log("m:", checkVowelConsonant3('m'));

Output

a: Vowel
B: Consonant
z: Consonant
5: Not a letter

Using includes():
e: Vowel
k: Consonant

Using switch:
i: Vowel
m: Consonant

What's going on

'aeiou'.includes(ch.toLowerCase()). Skip toLowerCase and every capital is a consonant.

Y is a consonant in this file. Linguists can fight it in the comments.