Hola de nuevo:
El código ha mejorado bastante. Para no mostrar el último valor puedes llegar con el bucle en vez de hasta
lista.length hasta
lista.length-1.
Pero normalmente en vez de crear errores y luego enmendarlos o disimularlos, suele ser más cómodo no crearlos (además de más elegante). Simplemente si la respuesta es null, no la incluyas en el array:
Código PHP:
var ct=0;
var lista = new Array();
while(1)
{
var pregunta = prompt("Introduce un nombre y pulsa aceptar o pulsa cancelar para ver los nombres introducidos","");
if (pregunta == null)
break;
else
lista[ct] = pregunta;
ct++;
}
Así nos ahorramos el problema.
Un saludo