Cita:
Iniciado por Rappa
Vale mencionar que grabar() no espera que termine de ejecutarse validar();
O sea, se comienzan a ejecutar en orden, pero la segunda no espera a que finalice la primera.
Como bien ha dicho @caricatos (

), eso sólo ocurrirá si hay alguna instrucción en validar que esté dentro de un setTimeout/Interval, o una petición AJAX asíncrona.
Saludos (: