What is the difference between synchronous and asynchronous code in JavaScript?

Angelos Chalaris · JavaScript, Function, Promise · Nov 14, 2021

Synchronous code runs in sequence. This means that each operation must wait for the previous one to complete before executing.

console.log('One');
console.log('Two');
console.log('Three');
// LOGS: 'One', 'Two', 'Three'

Asynchronous code runs in parallel. This means that an operation can occur while another one is still being processed.

console.log('One');
setTimeout(() => console.log('Two'), 100);
console.log('Three');
// LOGS: 'One', 'Three', 'Two'

Asynchronous code execution is often preferable in situations where execution can be blocked indefinitely. Some examples of this are network requests, long-running calculations, file system operations etc. Using asynchronous code in the browser ensures the page remains responsive and the user experience is mostly unaffected.

Would you like to help us improve 30 seconds of code?Take a quick survey

Recommended snippets & collections