Siguiendo la definición recursiva...
Código javascript
:
Ver originalfunction esCapicuaRecursivo(cadena) {
function arregloEsCapicua(arreglo) {
return arreglo.length < 2
? true
: ((arreglo.pop() == arreglo.shift()) && arregloEsCapicua(arreglo));
}
return arregloEsCapicua(cadena.split(""));
}
Siguiendo la definición más popular...
Código javascript
:
Ver originalfunction esCapicuaDefinicion(cadena) {
return (cadena == cadena.split("").reverse().join(""));
}
Ejemplo:
Código javascript
:
Ver originalalert(esCapicuaDefinicion("123456545654321"));
alert(esCapicuaDefinicion("123456788984323"));
alert(esCapicuaRecursivo("123456545654321"));
alert(esCapicuaRecursivo("123456788984323"));
(Queda un poco feo, pero hay que pasar la cadena a array porque array tiene mejores métodos (como reverse o pop y shift))