Imagen destacada del artículo Verificar si una expresión es un palindromo con javascript

Verificar si una expresión es un palindromo con javascript

javascript svg
actualizado: 31 / 01 / 2022

La wikipedia define como palindromo a una palabra o expresión que se lee igual de izquierda a derecha que de derecha a izquierda. En el siguiente tutorial vamos a hacer una función que compruebe si una expresión es palindrome o no.

Escribiendo la función palindrome checker en javascript

js
function palindromeChecker(str) {
const strReversed = str.split("").reverse().join("");
return strReversed === str ? "es palindromo" : "no es palindromo";
}
console.log(palindromeChecker("oso")); // es palindromo
console.log(palindromeChecker("hola")); // no es palindromo
console.log(palindromeChecker("omo")); // es palindromo
  • Primero creamos la función, definiendo que debe recibir un string.

  • Creamos la constante strReversed, en la que guardaremos el string invertido.

  • .split('') lo separa en un array.

  • .reverse() revierte el arreglo.

  • .join('') Lo vuelve a convertir en string.

  • Por ultimo usando el operador ternario, indicamos que si ambas cadenas son iguales devuelva 'es palindromo', y si no 'no es palindromo'.

Con esto podríamos dar el ejercicio por terminado pero aún falta algo, la función anterior solo sirve para palabras, si necesitamos verificar que alguna frase sea palindromo el código anterior no funcionará así que vamos a agregarle algunas cositas a nuestro ejemplo.

Añadir expresión regular para eliminar espacios en blanco del string

js
function palindromeChecker(str) {
const newStr = str.replace(/[\W_]/g, "").toLowerCase();
const strReversed = newStr.split("").reverse().join("");
return newStr === strReversed ? "es palindromo" : "no es palindromo";
}
console.log(palindromeChecker("Ali tomo tila")); // es palindromo
console.log(palindromeChecker("Amad a la dama")); // es palindromo
console.log(palindromeChecker("otra cosa")); // no es palindromo
  • Lo que hemos echo es agregar una nueva constante que guarda el valor del string pero eliminando los espacios, gracias a la expresión regular que pasamos dentro del método .replace(), también lo convertimos en minúsculas.

  • La constante strReversed es igual a la anterior solo que esta vez se crea a partir de el valor de newStr.

Probar código en vivo

Cargando... Esperando para mostrar el código de este ejemplo
Artículos relacionados:
Input css: personalizar estilos de campos de entrada en css

Imagen destacada del artículo Input css: personalizar estilos de campos de entrada en css

Cómo centrar un botón con css

Imagen destacada del artículo Cómo centrar un botón con css

CodeGPT: ChatGPT dentro de vscode

Imagen destacada del artículo CodeGPT: ChatGPT dentro de vscode

Como leer un archivo de texto (txt) usando nodejs

Imagen destacada del artículo Como leer un archivo de texto (txt) usando nodejs

Cómo insertar imágenes en HTML

Imagen destacada del artículo Cómo insertar imágenes en HTML

Lista desplegable en HTML (etiqueta select)

Imagen destacada del artículo Lista desplegable en HTML (etiqueta select)

Headless cms (cms sin cabeza)

Imagen destacada del artículo Headless cms (cms sin cabeza)