JavaScript Ready | Программирование
8.31K subscribers
996 photos
60 videos
530 links
Авторский канал по разработке на JavaScript.
Ресурсы, обучения, задачи, шпаргалки.
Ежедневно информация пополняется!

Cотрудничество: @energy_c
Download Telegram
📱 Ключевые методы работы с множествами!

Шпаргалка по основным операциям с Set: добавление, удаление, проверка наличия, перебор и преобразование. Они необходимы при работе с уникальными значениями, оптимизации поиска и очистке данных без дубликатов.

📣 JS Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍10🔥5🤝1
Когда объект может быть «пустым» — опциональная цепочка спасает от ошибок!

Во вложенных данных из 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);


🔥 Опциональная цепочка работает для свойств, методов, индексов и повышает надёжность кода при работе с внешними данными.

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤7🔥7
📱 Откат формы к исходному состоянию!

Когда пользователь начал что-то менять, но передумал — важно вернуть всё как было. Это снижает число ошибок и облегчает работу с формами.

В этой задаче:
• Сохраним начальные данные при загрузке.

• Сравним текущие значения с изначальными.

• Добавим кнопку отката и логику обновления.

• Сделаем реализацию универсальной и лаконичной.


Конечный результат — готовый механизм сброса, который легко встроить в профиль, настройки или любую редактируемую форму.

📣 JS Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍10🔥8
Что же выведет консоль?
Anonymous Quiz
31%
A
17%
B
48%
C
4%
D
👍11🔥8❤6
This media is not supported in your browser
VIEW IN TELEGRAM
LearnJS — русскоязычный учебник, от базовых понятий до продвинутых тем чтобы освоить JS!

Удобные объяснения, примеры кода, интерактивные задания помогут прокачать навыки как новичкам, так и опытным разработчикам.

📌 Оставляю ссылочку: learnjs.ru

📣 JS Ready | #сайт
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤10🔥5🤝2
📱 Рассмотрим встроенные функции!

Шпаргалка по некоторым функциям, которые используются для преобразования типов, числовых проверок и анализа данных. Основа для валидации ввода, динамического поведения и надёжной логики.

📣 JS Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥10❤8🤝3
Группировка данных по ключу!

При работе с табличными данными, API-ответами или логами часто нужно группировать записи по определённому признаку — роли, категории, дате.

Исходный массив объектов — типичный кейс из API:
const users = [
{ name: "Alice", role: "admin" },
{ name: "Bob", role: "user" },
{ name: "Eve", role: "admin" },
];


Используем reduce как агрегатор. В одну строку — и читаемо, и производительно:
const grouped = users.reduce((acc, u) => {
(acc[u.role] ||= []).push(u);
return acc;
}, {});


Теперь grouped.admin и grouped.user содержат списки пользователей по ролям. Получить нужную подгруппу — просто:
console.log(grouped["user"]); // [{ name: "Bob", role: "user" }]


🔥
Такой приём универсален для списков любых сущностей — от заказов до логов, и легко адаптируется под бизнес-логику.

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤8🔥6🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
👍 30 Seconds of Code — это коллекция полезных JS-сниппетов!

От сортировок и форматирования даты до уникальных хаков с массивами и объектами — всё в одном месте. Подходит как шпаргалка и как источник решений для повседневных задач. Каждый сниппет объяснён и готов к применению.

Оставляю ссылочку: GitHub 📱


📣 JS Ready | #репозиторий
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍6🔥6