# Синхронный и асинхронный код в JavaScript

Рассмотрим следующий код:

`console.log('1'); console.log('2');`

Очевидно, что сначала сработает первый вывод в консоль, а потом - второй. То есть команды нашего кода выполняются по очереди - в порядке их следования в коде. Такой код называется синхронным.

Рассмотрим теперь следующий код:

`setTimeout(function() { console.log('1'); }, 3000); console.log('2');`

В данном случае команды не выполняются в порядке следования в коде: первый вывод в консоль выполнится, когда приходит его время, но остальной код не ожидает этого момента, а продолжает выполнятся. Такой код называется асинхронным.

Асинхронный код возникает в JavaScript достаточно часто: при работе с таймерами, при привязке обработчиков событий, при загрузке картинок, при работе с технологией AJAX, позволяющей загружать части страницы с сервера, при работе с NodeJS, представляющим собой серверный JavaScript.

← →
↑
en ru