Что выведет этот код?


console.log("A")

setTimeout(() => console.log("B"), 0)

Promise.resolve().then(() => console.log("C"))

console.log("D")


A
D
C
B

Разбор по шагам.

• Сначала выполняется синхронный код (Call Stack):
• console.log("A") → выводит A
• setTimeout(..., 0) → колбэк отправляется в macrotask queue
• Promise.resolve().then(...) → колбэк отправляется в microtask queue
• console.log("D") → выводит D

После этого основной поток завершён.

Затем Event Loop обрабатывает microtasks (они имеют более высокий приоритет):

выполняется Promise → выводит C

И только потом выполняются macrotasks:

• setTimeout → выводит B

Итоговый порядок выполнения:

Sync → Microtasks (Promise) → Macrotasks (setTimeout)

Если кратко:

Promise всегда выполнится раньше setTimeout, даже если timeout = 0.
3 512
JavaScript. Использование Object.defineProperty для настройки свойств

Object.defineProperty() позволяет настроить атрибуты свойства, такие как writable, configurable и enumerable.
2 410
🔥 Полезная подборка каналов только код, практика и самые передовые инструменты, которые используют разработчики прямо сейчас.👇

emoji ИИ: @+fO3uB3JcoBwwZDM6

emoji Python: @+iMIKLAknbiEzNDBi

emoji Linux: @+3s7mILOJlEsxZDgy

C++ @+NQ9pfzlE7Is4ZGVi

Docker: @+Wth3VOL20DA2Zjdi

Хакинг: @+gFboyi2P0xk3ZWJi

emoji Devops: @+tjevEMfuFic2N2Ni

emoji Golang: @+mKlF_CpQbYBlM2Fi

Аналитика: @+2oaQctOZv7tmN2Fi

emoji Javascript: @+uvMUB6f7VuQxMTVi

C#: @+lqje2zZ

emoji Java: @+w5lA6MacJV5iNTYy

Базы данных: @+AwphJ57NFLA2N2Q6

emoji Rust:@+KMRkamtAaaQxOTIy

Технологии: @+cQHlqIGlOnY0YmMy

💰 Экономика и инвестиции в ИИ @+dlRhcDPDhvg5Yjdi

💼 Актуальные вакансии: @addlist

emoji Chatgpt бот в тг: @Chatgpturbobot

📚 Бесплатные ит-книги: @addlist

Подборка по Golang: @addlist

⚡️ Лучшие ИИ ресурсы: @addlist2

Самое лучшее в этом: ты учишься даже тогда, когда “нет времени, просто потому что читаешь правильную ленту.
1 410
Хотите научиться создавать полноценные API-серверы с использованием Node.js и TypeScript?

Приглашаем на открытый урок «Как создать API-сервер с TypeScript и Node.js».

?? 4 августа в 20:00 МСК
?? Бесплатно. Урок в рамках старта курса «Node.js Developer».

На открытом уроке мы покажем, как быстро настроить сервер с помощью Express, создать маршруты для работы с данными и обрабатывать запросы от клиентов. Вы освоите основы TypeScript и API-разработки, получите знания для работы с типами данных и ошибок.

?? Погрузитесь в мир востребованной backend-разработки: создайте API-сервер, научитесь писать чистый и безопасный код и откройте для себя возможности Node.js.

?? Ссылка на регистрацию: https://otus.pw/xb3Y/
571
❓ Зачем нужен атрибут contenteditable в HTML и когда его использовать?

Атрибут contenteditable позволяет сделать любой HTML-элемент редактируемым прямо на странице. Это полезно для создания текстовых редакторов, заметок или интерфейсов без использования дополнительных полей ввода.

✅ Пример:

<div contenteditable="true">Нажми сюда и начни редактировать текст</div>


📌 В этом примере пользователь сможет кликнуть на блок и изменить его содержимое прямо в браузере.

contenteditable удобно использовать для быстрой реализации функций редактирования текста без сложных форм и без дополнительной логики обработки полей ввода.
3 978