ejem ... vale, ya veo que lo del undefined iba aún más allá
Mira, el problema te viene de aquí
En la función
comprobar() tienes esta condición
FF parece que entiende que le estás pidiendo un caracter en determinada posición dentro de una cadena pero IE entiende, por la sintaxis que usas, que buscas un elemento dentro de un array y por eso te devuelve
undefined.
Usa mejor el método para encontrar un caracter por su posición dentro de una cadena que es
charAt(posición) if (palabra.charAt(i)==letra)