Introducción
Ya vimos cómo funciona la función para ver si una cadena termina con un substring, string, carácter o letra. Hoy veremos cómo comprobar si una cadena termina en vocal.
Es decir, vamos a ver si un string termina con a, e, i, o, u.
Para ello no usaremos la función previamente mencionada, haremos otro tipo de comparaciones.
Comprobar si una cadena termina en vocal
Me he dado a la tarea de escribir una función que recibe una cadena y devuelve un booleano indicando si termina con una vocal.
Aquí está la función en JS:
const terminaEnVocal = cadena => {
// Si no hay cadena o está vacía...
if(!cadena || !cadena.length) return false;
// Sacar el último carácter y convertirlo a minúscula
let ultimoCaracter = cadena[cadena.length - 1].toLowerCase();
// Con indexOf comprobar si dicho carácter está en el
// arreglo ["a", "e", "i", "o", "u"]
// Si sí está, indexOf devolverá algo diferente a -1
// Si no está, entonces indexOf devolverá -1
// Con eso ya podemos evaluar y convertirlo a booleano
return ["a", "e", "i", "o", "u"].indexOf(ultimoCaracter) !== -1;
}
Creamos una función que recibe una cadena. Extraemos su último carácter y lo convertimos a minúscula usando toLowerCase.
Por ejemplo, de la cadena “HOLA” sacamos el último carácter, que sería “A”, lo convertimos y ahora es “a”.
Finalmente comprobamos si ese carácter está dentro de un arreglo con la función indexOf.
Usos de la función
La llamamos y le pasamos una cadena. Devolverá un booleano, lo que significa que la podemos poner dentro de una sentencia if y todo eso.
Pingback: Comprobar si comienza con vocal en JavaScript - Parzibyte's blog