Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
21.8K subscribers
2.81K photos
194 videos
44 files
5.13K links
Все самое полезное для фронтенда в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/77178ed4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5b6884689c2151c820bb4
Download Telegram
🔥 Каверзный вопрос с собеса

Метод .map() передаёт в колбэк три аргумента: текущий элемент, индекс и исходный массив. Функция parseInt принимает: строку и radix — основание системы счисления. Поэтому индекс массива попадает в radix.

🔍 Что происходит на самом деле:


parseInt('1', 0)


radix = 0 означает автоопределение системы счисления:

• если строка начинается с '0x' или '0X' → основание = 16
• во всех остальных случаях → используется основание = 10

Поэтому '1' интерпретируется как десятичная.


parseInt('7', 1)


системы счисления с основанием 1 не существует => Nan


parseInt('11', 2)


'11' в двоичной системе — это 3₁₀ => 3

❇️ parseInt('11', 2) парсит всю строку как двоичную, потому что она корректна полностью.
Распространённый миф — будто бы берётся только первый символ; это неверно.

Как исправить:


['1', '7', '11'].map(str => parseInt(str))


Или проще:


['1', '7', '11'].map(Number)


🐸 Библиотека фронтендера

#career_merge #middle
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🤩31
🚀 AbortController — как правильно отменять запросы

➡️ Проблема (1 картинка):

Пользователь быстро переключает вкладки или вводит текст в поиске. Старые запросы продолжают работать и могут перезаписать актуальные данные.

➡️ Решение (2 картинка):

Отменяйте предыдущие запросы через AbortController

Что это даёт:

🟢 Нет race condition — обновляется только последний запрос

🟢 Браузер действительно отменяет запрос на уровне сети

🟢 Код без лишних флагов вроде isCancelled

🟢 Работает с API, которые поддерживают AbortSignal (fetch, Axios ≥0.22, React Query)

Когда применять:

— Автодополнение и live-поиск
— Переключение вкладок и фильтров
— Отмена запросов при размонтировании компонента
— Повторные запросы в useEffect при изменении зависимостей

⚠️ Важные детали:

controller.abort() можно вызывать многократно — это безопасно
Отмена происходит на стороне клиента — запрос может дойти до сервера
После abort() новые запросы с тем же controller не сработают (создавайте новый)

Поддержка:

🟣 Fetch API — нативно
🟣 Axios ≥ 0.22 — через signal
🟣 React Query — через queryFn

🐸 Библиотека фронтендера

#hotfix #react
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🥰43
💡 Как работает реактивность в Vue 3

Vue 3 использует Proxy, чтобы отслеживать изменения данных и обновлять только те части интерфейса, которые зависят от изменённых свойств.

➡️ В карточках — сжатое объяснение ключевых принципов: что именно перехватывает Proxy, как работает трекинг зависимостей и почему несколько десятков строк кода уже передают суть всей системы.

🐸 Библиотека фронтендера

#under_hood
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍2
🎓 Экспресс-курс «Математика для Data Science» стартует 4 декабря

Этот курс для вас, если вы:

🧑‍💻 Программист
Когда нужно понять, что происходит «под капотом» ML-алгоритмов.

📊 Начинающий DS / аналитик / студент
Чтобы закрыть теорию, подтянуть фундамент и собрать портфолио.

📈 Смежный специалист
Чтобы уверенно работать с моделями, статистикой и гипотезами.

🎁 Сейчас лучший момент стартовать:
— скидка 40% на курс до конца ноября
— можно пройти бесплатный тест на знание основ математики

👉 Записаться на курс
🔥6
🔗 Что почитать

🎥 Список уровней производительности веб-анимаций

Какие веб-анимации быстрые, какие тормозят браузер, и почему безопаснее всего анимировать transform и opacity. Помогает быстро выбирать плавные анимации без лишней нагрузки.

🎥 Не используйте useTransition повсюду

Когда useTransition реально улучшает плавность интерфейса, а когда только усложняет код.

🎥 Что произошло за последнии пару лет с GC в V8

Какие идеи позволили сделать сборку мусора быстрее и менее заметной для пользователя.

🐸 Библиотека фронтендера

#read_watch
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5🥰21
This media is not supported in your browser
VIEW IN TELEGRAM
😮 Visual Types: типизация через картинки

Вместо чтения про "Union type позволяет переменной быть одним из нескольких типов" — видишь схему, и всё сразу понятно.

🔤 Что покрывает:

Примитивы, объекты, массивы, Union/Intersection типы, дженерики — все базовые концепции.

Полезно для начинающих в TypeScript или тех, кто запутался в терминологии.

🔗 Ссылка на гид

🐸 Библиотека фронтендера

#readme #ts
Please open Telegram to view this post
VIEW IN TELEGRAM
7❤‍🔥1
🔥 Выучи математику за 60 дней!

Чем важна математика расскажет Мария Тихонова - кандидат компьютерных наук, руководитель исследовательского направления SberAI, доцент факультета компьютерных наук и преподаватель НИУ ВШЭ на курсе «Математика для Data Science» от Proglib Academy.

👀 Мария - человек, который реально работает с LLM и делает так, чтобы модели понимали человеческую речь, а не делали вид.

Что еще внутри курса:
- живые вебинары, на которых можно задать вопросы спикерам
- доступ к материалам в записи, если не успели на лекцию и чат
- 3 задания с практикой на Python и финальный проект с подробной обратной связью от экспертов курса
- актуальные знания: программа разработана в ноябре 2025г.
- программа без воды - 2 месяца только самого нужного для старта
- для старта нужны всего лишь знания школьной математики и основы Python
- скидка 40% до 30 ноября
- если оплатить до конца ноября, получите курс «Базовая математика» в подарок


👇👇👇
Записаться на курс
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰5👍1
🔥 Состояние: где оно живёт и почему это важно

Неправильное место для state — это prop drilling через 5 компонентов, лишние рендеры и баги при обновлении страницы.

➡️ Разбираем все типы состояния в одной серии:

— Local state — когда useState достаточно, а когда нет;

— Global state — Context API vs Redux/Zustand;

— Server state — как React Query экономит запросы;

— URL state — недооценённое место для фильтров и шаринга.

🐸 Библиотека фронтендера

#blueprint
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72