Usando async e adie para carregar scripts em ordem

Então, estou seguindo a recomendação do Google PageSpeed para adiar scripts acima da dobra. Digamos que este é o código no meu<head>:

<script src="/js/jquery.js"></script>
<script src="/js/functions.js"></script>

ofunctions.js script depende do jQuery, por isso é crucial quejquery.js é carregado e executado antesfunctions.js.

O que eu tentei:

adiar

<script src="/js/jquery.js" defer></script>
<script src="/js/functions.js" defer></script>

Enquanto isso funciona efunctions.js é executado corretamente, quando carrego a página, vejo-a piscar, como se o CSS ainda não estivesse carregado. Observe que o código acima está no<head>. Se eu remover odefer atributo dejquery.js, a tremulação desaparece. Isso me leva à minha pergunta:

Misturado

<script src="/js/jquery.js" async></script>
<script src="/js/functions.js" defer></script>

Usandoasync no script de dependência edefer no script dependente garantir que eles sempre serão executados nessa ordem? Parece funcionar nos meus testes, mas não sei o suficiente sobre como o analisador funciona para ter certeza.

questionAnswers(3)

yourAnswerToTheQuestion