buenas,
hay mejores formas de realizar este tipo de tareas. te recomiendo que investigues sobre expresiones regulares y los metodos que lo usan. no obstante, seguire tus pasos. o mas sencillo, investiga por los metodos split y join.
parece que vuelves a mostrar los mismos errores que en tus inicios en el foro. especificamente me refiero al punto y coma despues de la declaracion del bucle for. las sentencias de flujo de control no requieren el uso de punto y coma para indicar terminacion de delcaracion. de hecho, si lo usas el interprete entendera otra cosa. un punto y coma seguido de un control de flujo indica que el cuerpo del control es una sentencia vacia. esto porque javascript permite indicar una sentencia como el cuerpo de un control.
Código:
for(init; condition; iteration) ;
// es lo mismo que ;
for(init; condition; iteration){
// cuerpo vacio ;
}
de todos modos, ahi no solo reside el problema. parte del problema tambien esta en el condicional
if. la extraccion debe ocurrir cada vez que se encuentre un espacio. por tanto, el codigo debe ir dentro del condicional.