Pergunta de entrevista da empresa Treasure Data

Difference between synchronous and asynchronous programming in Javascript? How would you use them?