Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14❤12👍11🤝1
Фильтруем объекты по ключу и значению!
В разработке часто нужно фильтровать списки объектов по динамическим критериям. Это помогает отбирать нужные данные из API, работать с таблицами и списками.
Например, есть массив пользователей с разными статусами:
Напишем универсальную функцию, которая принимает массив, ключ и искомое значение. Она вернёт только те объекты, где значение поля совпадает:
Используем функцию для получения только активных пользователей:
🔥 Такой приём пригодится в любой работе с данными — валидации, отображении и логике.
📣 JS Ready | #практика
В разработке часто нужно фильтровать списки объектов по динамическим критериям. Это помогает отбирать нужные данные из API, работать с таблицами и списками.
Например, есть массив пользователей с разными статусами:
const data = [
{ id: 1, status: "active" },
{ id: 2, status: "inactive" },
{ id: 3, status: "active" },
];
Напишем универсальную функцию, которая принимает массив, ключ и искомое значение. Она вернёт только те объекты, где значение поля совпадает:
function filterByKey(arr, key, value) {
return arr.filter(item => item[key] === value);
}Используем функцию для получения только активных пользователей:
const active = filterByKey(data, "status", "active");
console.log(active); // объекты со статусом "active"
🔥 Такой приём пригодится в любой работе с данными — валидации, отображении и логике.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14🔥8👍7
Когда приходят грязные данные с сервера или пользователь вводит повторы — важно убрать дубликаты и сохранить порядок. Простое решение через
Set не всегда подходит, если порядок критичен.В этой задаче:
• Обрабатываем массив вручную — без потери порядка.
• Используем Set только для контроля повторов.
• Пишем функцию, которую легко переиспользовать.
Такой приём применяют при фильтрации тегов, обработке пользовательского ввода и агрегации логов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍8❤6🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
CodeCombat — это полноценная игра: ты пишешь код, а твой герой выполняет команды, побеждает врагов и решает задачи. Подходит и новичкам, и разработчикам, которые хотят отдохнуть с пользой!
📌 Оставляю ссылочку: codecombat.com
📣 JS Ready | #сайт
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝13❤6👍6🔥2
Зачем заставлять пользователя выбирать вручную, если можно подставить это автоматически?
В этом гайде:
• Заполним поля с type="date" и type="time" сразу при открытии.
• Реализуем автозаполнение только при первом фокусе — чтобы не мешать тем, кто хочет ввести вручную.
• Рассчитаем будущую дату — например, через 7 дней от сегодня, прямо в коде.
Такие улучшения экономят время, снижают количество ошибок и делают UX понятнее.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤8🔥7🤝2
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍10🔥5🤝1
Когда объект может быть «пустым» — опциональная цепочка спасает от ошибок!
Во вложенных данных из API часто отсутствуют поля. Вместо длинных проверок
Объект может быть
Если вложенный объект не задан — доступ просто вернёт
Когда структура полная — опциональная цепочка работает как обычный доступ:
🔥 Опциональная цепочка работает для свойств, методов, индексов и повышает надёжность кода при работе с внешними данными.
📣 JS Ready | #практика
Во вложенных данных из API часто отсутствуют поля. Вместо длинных проверок
if — используем ?. для безопасного доступа без исключений. Объект может быть
null, но доступ к свойству не должен ломать код:const user = null;
console.log(user?.name);
Если вложенный объект не задан — доступ просто вернёт
undefined:const user = {};
console.log(user?.profile?.email);Когда структура полная — опциональная цепочка работает как обычный доступ:
const user = { settings: { theme: 'dark' } };
console.log(user.settings?.theme);🔥 Опциональная цепочка работает для свойств, методов, индексов и повышает надёжность кода при работе с внешними данными.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤7🔥7