progway
Статьи о web-разработке, разборы вопросов с собеседований
— 2 минуты
Как создать массив фиксированной длины?
На самом деле, способов множество. Можно создать простой массив пустых элем...
— 2 минуты
Как реагировать на изменения объекта
В JavaScript обычные объекты не умеют уведомлять о своих изменениях, однако...
— 3 минуты
Верстка писем — это боль? или нет..?
Если вы думали, что адаптивная верстка для всех браузеров — это сложно, поп...
— 2 минуты
Что такое Server-Sent Events
SSE — это технология для однонаправленного соединения между сервером и клие...
— 1 минута
Флоу рендеринга компонента в React
Небольшая шпаргалка, которая содержит в себе очередь вызова эффектов при ма...
— 4 минуты
Что такое WebRTC
WebRTC — Web Real Time Communications — стандарт, который описывает прямую...
— 4 минуты
Связываем React и localStorage через useSyncExternalStore
Как согласовать изменение состояния в реакте и поля в localStorage? До нед...
— 3 минуты
Теги для шаблонных строк
В JavaScript есть, как по мне, крайне странный синтаксис. Самым очевидным е...
— 2 минуты
Как скопировать значение в буфер обмена
Часто может возникнуть необходимость скопировать какое-то значение в буфер...
— 1 минута
Какими способами можно скрыть элемент со страницы?
Для многих каверзный вопрос. В этой статье коротко рассмотрим какие есть ва...
— 3 минуты
Составные компоненты
Есть такой паттерн для реакта, который называется Compound Components. Это...
— 3 минуты
Порталы в React
Сталкивались когда-нибудь с проблемой, когда нужно рендерить элемент за пре...
— 1 минута
Pattern matching
Pattern matching — это крутой концепт, который позволяет делать что либо в...
— 3 минуты
Как я использую шину событий
Шина событий — это паттерн, который используется для взаимодействия различн...
— 2 минуты
Немного о __proto__ и prototype в JavaScript
proto — это внутреннее свойство любого объекта или примитива в JavaScript,...
— 3 минуты
"Тяжёлые" анимации
На самом деле, на производительность сайта может влиять очень много что — и...
— 1 минута
Как определить, активна ли вкладка у пользователя?
Если вам нужно узнать, активна ли вкладка в браузере у пользователя, сущест...
— 2 минуты
Как менять состояние вкладки по интервалу
Полезная фича для демонстрации, например, уведомлений, которая может пригод...
— 3 минуты
Как браузер понимает, что нужно закешировать?
Частый вопрос с собесов, который, к тому же, часто может пригодиться и на п...
— 2 минуты
Что такое виртуализация?
Это крайне популярная техника оптимизации, которая позволяет эффективно упр...
— 2 минуты
Что такое SWC
SWC — это аббревиатура, которая всё чаще появляется в мире фронтенда. Расши...
— 1 минута
Как убрать стили на под-дереве — мини-задача с реального проекта
Недавно был следующий кейс: в долгоживущий проект интегрировали tailwind со...
— 1 минута
Разница между CommonJS и ES Modules
Если по простому, то CommonJS и ES (ECMAScript) Modules — это два способа и...
— 1 минута
Как отменить уже отправленный HTTP запрос?
Для отмены уже отправленного запроса нам пригодится встроенный в JavsScript...
— 1 минута
Что такое CI/CD
Помимо того, что разработчики должны уметь писать сам код, было бы неплохо...
— 1 минута
CSS для печати страниц
Несколько лет назад я делал пет-проект — конструктор резюме. Кейс был такой...
— 1 минута
Как скачать файл с сайта
У тега ссылки <a> есть очень удобный атрибут download, который позволяет ск...
— 2 минуты
noopener и noreferrer в браузере
При открытии ссылки в новой вкладке через атрибут target="blank", браузер д...
— 3 минуты
Разделение чанков в Vite
Часто может быть так, что не малое приложение с большим количеством зависим...
— 1 минута
Как открыть ссылку в новом окне или вкладке
Чтобы ссылка открывалась в новом окне или вкладке, достаточно добавить к те...
— 2 минуты
Что такое Callback Hell и как с ним бороться?
Частый вопрос с собеса, особенно если идти куда-то повыше стажёра. Callback...
— 1 минута
Как определить с какого устройства открыт сайт
Самым простым способом является анализ строки User-Agent’a — это специальны...
— 1 минута
Виды операторов в JavaScript
Операторы в языке (почти во всех языках, кстати), можно строго разделить на...
— 2 минуты
JavaScript не в браузере: NodeJS, Deno и Bun
Начать стоит с того, что JavaScript может выполняться далеко не только в бр...
— 2 минуты
Остановка распространения событий: event.stopPropogation и event.stopImmediatePropagation()
Итак, эти методы используются для управления событиями в JavaScript. Сначал...
— 2 минуты
Что такое декларативность и императивность?
Императивный подход написания кода фокусируется на том, КАК именно должна б...
— 2 минуты
Что такое Git Flow?
Git Flow — это модель ветвления для Git, основная идея которой заключается...
— 2 минуты
Определяющие тайпгарды
Как я и писал в одном из своих постов в телеге, тайпгарды есть двух видов:...
— 1 минута
Управление фокусировкой
Часто на собеседовании могут спросить об управлении состоянием фокуса. Обыч...
— 2 минуты
Зачем нужна семантика?
В одном из прошлых постов я разобрал что такое семантика. В этом посте хочу...
— 2 минуты
Что такое семантика?
Семантика в HTML относится к использованию HTML-тегов, которые ясно и одноз...
— 2 минуты
Псевдоселекторы в CSS
Псевдоселекторы в CSS — это специальные селекторы, которые позволяют выбира...
— 1 минута
Что такое Fullscreen API
Fullscreen API — это интерфейс для работы с полноэкранным режимом в веб-бра...
— 3 минуты
Сужение типов и уточняющие тайпгарды
Часто в TypeScript коде можно столкнуться с тем, что типы недостаточно точн...
— 2 минуты
В чем заключается разница между интерфейсом и типом?
Для меня большое удивление, что я до сих пор не смог найти нормального мате...
— 2 минуты
Что такое структурная типизация
Структурная типизация — это подход в языках программирования, который позво...
— 1 минута
Обработка сочетания клавиш в JavaScript
Чтобы обработать сочетание клавиш, необходимо подписаться на событие keydow...
— 3 минуты
Как типизировать функцию мемоизации
В одной из прошлых статей разбирал реализацию функции мемоизации на JavaScr...
— 1 минута
Реализация мемоизации в JavaScript
О том, что такое мемоизация, можно узнать в отдельной статье. На самом деле...
— 2 минуты
Что такое мемоизация
Мемоизация — техника оптимизации кода, сокращающая время его исполнения. Пр...
— 2 минуты
Семантическое версионирование
Способ создавать человекочитаемые наглядные номера версий для любого продук...
— 1 минута
В чём разница между функцией, методом и процедурой
Функция и метод — это два базовых понятия в программировании, но они исполь...
— 2 минуты
Какие ошибки есть в JavaScript?
Уже не помню где, скорее всего в чате тг канала, просили разобрать какие ес...
— 2 минуты
Шпаргалка по Utility-типам в TypeScript
В этой статье разберу только самые часто используемые, посмотреть все utili...
— 3 минуты
Дженерики
Сколько я не бился в попытках объяснить что такое дженерик, кажется, что эт...
— 2 минуты
Сколько времени читается статья?
Очень интересная фишка в блогах и на других текстовых сайтах — указывать ря...
Всего статей: 56