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

Cотрудничество: @energy_c
Download Telegram
📱 Разберемся с Lazy evaluation!

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

В гайде рассмотрим:
• Ленивые функции и цепочки преобразований;

• Обработку API «по запросу»;

• Генераторы как бесконечные ленивые последовательности.


Такой подход используют в библиотеках, пайплайнах данных и даже UI-фреймворках.

📣 JS Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤6🔥6🤝4
This media is not supported in your browser
VIEW IN TELEGRAM
☕️ VisuAlgo — крутейший ресурс для наглядного понимания алгоритмов и структур данных!

Здесь можно вживую посмотреть, как работают сортировки, графы, стеки, деревья и другие «страшные слова». Всё визуализировано шаг за шагом - идеально, чтобы разложить сложные темы по полочкам.

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

📣 JS Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍7❤6🤝1
📱 Хотите контролировать свои расходы прямо в консоли?

В этом посте собираем простой JS-трекер трат, который хранит все расходы в массиве, считает общую сумму и показывает, куда деньги улетают чаще всего.

Что делаем:
• Создаём структуру данных для расходов;

• Добавляем траты с суммой, категорией и датой;

• Считаем общую сумму через reduce;

• Анализируем траты по категориям и ищем топовую.


В итоге получаем полезный консольный инструмент и прокачиваемся в работе с массивами, объектами и циклами.

📣 JS Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍6🤝6🔥4
Проверяем email с помощью RegExp!

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

Создадим функцию isValidEmail:
function isValidEmail(email) {
const regex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return regex.test(email);
}


Применим на примерах:
console.log(isValidEmail("user@example.com")); 
// true
console.log(isValidEmail("hello@domain"));
// false
console.log(isValidEmail("bad@@mail.com"));
// false


Можно добавить подсказку для пользователя:
function validateEmail(email) {
if (isValidEmail(email)) {
console.log("✅ Email корректный!");
} else {
console.log("❌ Введите правильный адрес!");
}
}
validateEmail("test@gmail.com");


🔥 Минимум кода, а результат полезен для форм, ботов и проектов с авторизацией.

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥7❤5
📱 Разбираем методы Promise API

В этой шпаргалке собраны методы для работы с промисами: создание успешных и отклонённых состояний, параллельное выполнение нескольких задач, обработка всех результатов и др. Эти приёмы применяются при работе с API, асинхронными операциями и оптимизации многозадачности.

📣 JS Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍7🔥5🤝2
Проверяем интернет-скорость!

Хочешь узнать, насколько быстрый у тебя интернет? Для этого есть готовый пакет speedtest-net, который позволяет получить скорость загрузки, отдачи и пинга.

Такой скрипт можно встроить в мониторинг или просто проверить сеть без браузера.

Шаг 1 — импортируем:
const speedTest = require('speedtest-net');


Шаг 2 — запускаем тест:
(async () => {
const res = await speedTest({ acceptLicense: true });
})();


Шаг 3 — форматируем и выводим результаты:
// Загрузка
console.log(`Download: ${(res.download.bandwidth / 125000).toFixed(2)} Mbps`);

// Выгрузка
console.log(`Upload: ${(res.upload.bandwidth / 125000).toFixed(2)} Mbps`);

// Пинг
console.log(`Ping: ${res.ping.latency} ms`);


🔥 Теперь у тебя свой speedtest прямо в коде. Можно запускать вручную или добавить в cron для регулярного замера.

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥5🤝4❤2
📱 AbortController: как отменять запросы и операции!

Иногда промисы и fetch продолжают выполняться, даже если результат уже не нужен. Это тратит время и ресурсы. AbortController решает проблему: создаём сигнал => передаём в задачу => при необходимости останавливаем.

В этом гайде:
• Отменяем fetch;

• Управляем несколькими задачами сразу;

• Пишем собственные функции с поддержкой AbortSignal.


Полезно для API, поиска, долгих операций и экономии ресурсов.

📣 JS Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍6🔥4