Introducción
Hoy veremos cómo podemos comprobar si una cadena termina con un carácter, o si un string tiene al final una letra usando el lenguaje de programación JavaScript.
En otras palabras: cómo saber si una cadena termina con otra en JS.
Es decir, una función que en inglés se llama endsWith que se traduce como terminaCon.
Comprobar si una cadena termina con en JavaScript
Termina con en JavaScript
Ya existe una función nativa de las cadenas. Es un método que todos los strings tienen, y devuelve un booleano. La función se llama endsWith.
Veamos unos ejemplos:
Como vemos devuelve true o false. Y podemos no sólo comparar si termina con un carácter, también se puede con una subcadena.
En caso de que no haya quedado claro, veamos este código que te dice si tu nombre termina en “a”:
let nombre = prompt("Dime tu nombre");
if(nombre.endsWith("a")){
alert("Tu nombre termina con a");
}else{
alert("Tu nombre NO termina con a");
}
Lo que hace es preguntar tu nombre con prompt y luego hace una simple comparación con la sentencia if. Finalmente manda un alert indicando si termina o no con esa letra.
Sobre la disponibilidad de esta función
Ya estamos en 2018, todos deberíamos usar navegadores actualizados que soporten estas últimas versiones de JS. Sin embargo, si el navegador que usamos no tiene esta función, podemos usar este polyfill:
if (!String.prototype.endsWith) {
String.prototype.endsWith = function(search, this_len) {
if (this_len === undefined || this_len > this.length) {
this_len = this.length;
}
return this.substring(this_len - search.length, this_len) === search;
};
}
Ese código lo incluimos antes de todos nuestros scripts. Si la función ya existe no pasará nada, y si no existe entonces se agregará.
Así es como podemos implementar endsWith para comprobar si una cadena termina con una letra, carácter u otra cadena en JS.
Pingback: Comprobar si cadena comienza con otra en JavaScript - Parzibyte's blog
Pingback: Comprobar si cadena termina con en C# - Parzibyte's blog
Pingback: JavaScript: Comprobar si una cadena termina en vocal - Parzibyte's blog