¿Forma correcta de esperar a que termine una función antes de continuar?

Tengo dos funciones JS. Uno llama al otro. Dentro de la función de llamada, me gustaría llamar a la otra, esperar a que termine esa función y luego continuar. Entonces, por ejemplo / pseudocódigo: function firstFunction(){ for(i=0;i<x;i++){ // do something } }; function secondFunction(){...