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

Cотрудничество: @energy_c
Download Telegram
Нативный выбор цвета через браузерный API

Хотите встроить в проект пипетку как в Photoshop — без лишних библиотек? В Chrome, Edge и Opera уже есть нативный EyeDropper API. Работает по HTTPS и в последних версиях Chromium-браузеров.

Шаг 1 — добавляем кнопку:
<button id="pickColor">Выбрать цвет</button>


Шаг 2 — подключаем EyeDropper:
if (!window.EyeDropper) {
alert("Ваш браузер не поддерживает EyeDropper API");
}


Шаг 3 — открываем пипетку и используем цвет:
const btn = document.getElementById("pickColor");
btn.addEventListener("click", async () => {
const eyeDropper = new EyeDropper();
const { sRGBHex } = await eyeDropper.open();
console.log("Цвет:", sRGBHex);
document.body.style.backgroundColor = sRGBHex;
});


Пипетка выбирает цвет с экрана и тут же применяет его к фону, а в консоли появляется hex-код.

🔥 Отличный инструмент для кастомизации, темизации и цветовых палитр прямо в браузере.

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍7🤝5❤2
📱 Симулируем игру «орёл или решка»

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

В этой задаче:
• Реализуем функцию подбрасывания монетки;

• Проверим совпадение выбора игрока и результата;

• Добавим счётчик побед для нескольких раундов.


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

📣 JS Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥21❤8👍8
Мини-интерпретатор выражений на JavaScript!

Создаём калькулятор, который выполняет введённые выражения прямо в браузере — пример динамического исполнения кода через new Function().

Создаём функцию из строки:
const add = new Function('a', 'b', 'return a + b');
console.log(add(2, 3)); // 5


Пользователь вводит выражение — программа вычисляет результат:
const expr = prompt("Введите выражение:");
const calc = new Function(`return ${expr}`);
alert(calc());


Добавляем обработку ошибок для устойчивости:
try {
const expr = prompt("Введите выражение:");
const calc = new Function(`return ${expr}`);
alert(calc());
} catch {
alert("Ошибка в выражении!");
}


Немного безопасности — разрешаем только числа и операторы:
const expr = prompt("Введите выражение:");
if (/^[\d+\-*/().\s]+$/.test(expr)) {
alert(new Function(`return ${expr}`)());
} else {
alert("Недопустимые символы!");
}


🔥 Получаем мини-интерпретатор выражений прямо в браузере — удобно для калькуляторов и формул.

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍8❤5
📱 Деструктуризация и оператор расширения!

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

📣 JS Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥6❤4🤝3
Проверяем, есть ли подключение к интернету!

Web API позволяет узнать, доступна ли сеть, а события online и offline — реагировать на потерю соединения. Это пригодится для офлайн-режима, сохранения черновиков или уведомлений.

Проверим текущее состояние:
console.log("Онлайн:", navigator.onLine);
// → true или false


Добавим реакцию на изменение статуса:
window.addEventListener("online",  () => console.log("✅ Интернет восстановлен"));
window.addEventListener("offline", () => console.log("❌ Соединение потеряно"));


Теперь оформим динамический индикатор:
function updateStatus() {
document.body.textContent = navigator.onLine
? "🟢 Онлайн"
: "🔴 Оффлайн";
}
window.addEventListener("online", updateStatus);
window.addEventListener("offline", updateStatus);
updateStatus();


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

📣 JS Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥9🤝8❤1
📱 Пишем CLI-помощника для путешественников!

Программа спрашивает город и температуру, автоматически переводит °C в °F и выдаёт человечный комментарий - будто заботливый попутчик.

В этой задаче:
• Используем модуль readline для интерактивного ввода;

• Преобразуем температуру по классической формуле;

• Добавляем потешные комментарии и эмодзи в зависимости от погоды;

• Форматируем итоговую строку для красивого вывода в CLI.


Это легко масштабировать — подключить API прогноза, автоопределение города по IP или даже добавить голосовой ответ.

📣 JS Ready | #задача
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
👩‍💻 Вы знали, что проверять и отлаживать регулярки можно прямо в VS Code?

Regex Previewer — плагин, который тестирует регулярные выражения в реальном времени на образце текста, который совпадает с вашим выделенным текстом. Расширение включает подробную справку по синтаксису и готовые шаблоны, которые можно сразу использовать в коде.

📣 JS Ready | #vscode
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥9❤6🤝2
📱 Event Target & Custom Events — как работают события?

Каждый клик в браузере проходит три фазы: захват, цель и всплытие. На любом этапе можно вмешаться, остановить поток или использовать делегирование.

Сегодня в посте:
• Разберём фазы события: захват и всплытие;

• Поймём, как работает делегирование;

• Создадим и запустим своё событие вручную.


С помощью CustomEvent можно создавать собственные события — заставлять компоненты общаться без прямых вызовов и фреймворков.

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