Работа с массивами и объектами — не только про хранение данных, но и про правильную трансформацию, фильтрацию и аккумулирование значений, соблюдая иммутабельность.
Что в карточках:
map
, filter
и reduce
reduce
с объяснением аргументов и отличий от forEach
reduce
— классические кейсы на собеседованиях.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
💯9❤2🌚2😁1
Полезный репозиторий для фронтенд-разработчиков: список всего, что нужно проверить перед запуском проекта.
📑 В каждом разделе есть ссылки на статьи, тулзы и видео для проверки.
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥1
Event loop — сердце JavaScript. Чтобы писать быстрый и стабильный фронтенд, важно уметь управлять задачами в его очередях. Подборка актуальных материалов:
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🎉1👾1
🗿 Незаметные ререндеры
— Даже если filters не меняются, при любом апдейте родителя все Item снова ререндерятся.
❓ Почему так происходит?
🐸 Библиотека фронтендера
#междусобойчик
const FiltersContext = createContext({ filters: {} });
function App({ filters, items }) {
return (
<FiltersContext.Provider value={{ filters }}>
{items.map(i => <Item key={i.id} />)}
</FiltersContext.Provider>
);
}
— Даже если filters не меняются, при любом апдейте родителя все Item снова ререндерятся.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚18❤2🔥1
🔥 Не пропустите событие осени для AI-комьюнити
24 сентября, 19:00 Мск — бесплатный вебинар с Максимом Шаланкиным «ИИ-агенты: новая фаза развития искусственного интеллекта»
😤 Пока все спорят, «боты это или нет», мы покажем, как работают настоящие агенты: с планированием, инструментами и памятью. За час Максим разберёт:
— почему ИИ-агенты сейчас на пике инвестиций
— чем они отличаются от ChatGPT и обычных моделей
— цикл агента: восприятие → планирование → действие → обучение
— живое демо простого агента
— как бизнес уже получает ROI до 80%
⚡️ Хотите спросить у Максима всё, что обычно остаётся «за кадром»? Ловите шанс — только в прямом эфире.
⏰ Мест мало, регистрация закроется, как только забьём комнату
24 сентября, 19:00 Мск — бесплатный вебинар с Максимом Шаланкиным «ИИ-агенты: новая фаза развития искусственного интеллекта»
😤 Пока все спорят, «боты это или нет», мы покажем, как работают настоящие агенты: с планированием, инструментами и памятью. За час Максим разберёт:
— почему ИИ-агенты сейчас на пике инвестиций
— чем они отличаются от ChatGPT и обычных моделей
— цикл агента: восприятие → планирование → действие → обучение
— живое демо простого агента
— как бизнес уже получает ROI до 80%
⚡️ Хотите спросить у Максима всё, что обычно остаётся «за кадром»? Ловите шанс — только в прямом эфире.
⏰ Мест мало, регистрация закроется, как только забьём комнату
🔥4
Разработчик фронтенда — от 300 000 до 490 000 ₽, офис/гибрид (Москва)
JS React Frontend Developer — от 4 000 $, удаленно (Москва)
Frontend разработчик (React) — удаленно (Санкт-Петербург)
MultiTrack для фронтенд-разработчиков — от 250 000 ₽, офис/гибрид (Москва)
Senior WEB Developer — от 300 000 ₽, удаленно (Москва)
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚3🔥2
{items.map((item, index) => (
<li key={index}>
<input value={item.name} />
</li>
))}
<li key=0>
остался тем же.В итоге сбивается фокус и теряется ввод.
{items.map((item) => (
<li key={item.id}>
<input value={item.name} />
</li>
))}
id
сохраняет правильное соответствие элементов, и UI ведёт себя предсказуемо.index
только если список точно статичен (например, меню без состояния). В остальных случаях всегда нужен стабильный уникальный ключ (id).#hotfix #react
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍1👏1
Часто мы думаем, что async/await — панацея от блокировок и лагов. Но на самом деле внутри браузера всё куда сложнее: event loop, microtasks, rendering pipeline.
#under_hood #js
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👏1
#read_watch #react #angular #js
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Когда нужно отсортировать массив объектов сразу по нескольким полям — вместо вложенных if можно сделать так:
const sortBy = (arr, keys) => [...arr].sort((a, b) =>
keys.reduce((res, k) => res || (a[k] > b[k] ? 1 : a[k] < b[k] ? -1 : 0), 0)
);
Где пригодится:
#readme #js
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🌚3🔥2❤1
Вместо тонны JS-кода можно писать интерактив прямо в атрибутах:
hx-get
, hx-post
, hx-swap
, hx-trigger
.— Минимум кода, максимум динамики
— Быстрый старт без фреймворка
— Удобно и для пет-проектов, и для прототипов
<button hx-get="/api/articles" hx-target="#list" hx-swap="innerHTML">
Загрузить статью
</button>
<div id="list"></div>
Запрос уходит на сервер → HTML-фрагмент прилетает и рендерится в
#list
.#stack #html
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🤔4❤2
❗ Сегодня премьера
В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным — «ИИ-агенты: новая фаза развития искусственного интеллекта».
В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.
⏰ Это прямой эфир: подключиться можно через лендинг курса.
В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным — «ИИ-агенты: новая фаза развития искусственного интеллекта».
В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.
⏰ Это прямой эфир: подключиться можно через лендинг курса.
🌚3😁1
Представим: старт проекта завтра. Что возьмете в основу?
— Быстрая верстка за счёт утилитарных классов
— Чёткий дизайн-системный язык без лишнего нейминга
— Удобно для больших команд — меньше стиля-разброда
— Стили прямо в компоненте → чище структура
— Динамика через пропсы без костылей
— Отличная интеграция с React, всё на JS
Голосуем реакциями:
👍 — Tailwind
❤️ — Styled Components
#code_battle
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45❤27🥱10
На картинке 3 кейса:
— Всегда указывайте все зависимости эффекта
— Если зависимость нестабильна (объект/функция) → мемоизируйте
(useMemo, useCallback)
— Примитивы (строка, число) в deps — самый безопасный вариант
#hotfix #react
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍2🔥2