This media is not supported in your browser
VIEW IN TELEGRAM
Remote – SSH даёт возможность с лёгкостью получать доступ, редактировать и передавать файлы на удалённый сервер, при этом оставаясь в знакомом интерфейсе VS Code.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27👍12❤11🤝3
🔥12👍9❤8🤝1
Замыкания: сохраняем состояние без классов!
Иногда нужно запоминать данные между вызовами функции — например, считать клики, сохранять позиции скролла или количество запросов. Решение — замыкания.
Проблемный вариант — данные хранятся в глобальной области. Любой код может изменить значение и сломать логику:
Чтобы изолировать данные, создадим внутреннюю область видимости. Переменная
Используем функцию, чтобы хранить состояние между вызовами. Каждый обработчик клика получит своё независимое значение:
🔥 Замыкания делают функции “умными” — они хранят данные и поведение вместе, формируя капсулу логики.
📣 Code Ready | #практика
Иногда нужно запоминать данные между вызовами функции — например, считать клики, сохранять позиции скролла или количество запросов. Решение — замыкания.
Проблемный вариант — данные хранятся в глобальной области. Любой код может изменить значение и сломать логику:
let count = 0;
function click() {
count++;
console.log("Clicks:", count);
}
Чтобы изолировать данные, создадим внутреннюю область видимости. Переменная
count теперь доступна только функции, которая её замыкает:function createCounter() {
let count = 0;
return function() {
count++;
console.log("Clicks:", count);
};
}Используем функцию, чтобы хранить состояние между вызовами. Каждый обработчик клика получит своё независимое значение:
const handleClick = createCounter();
button.addEventListener("click", handleClick);
🔥 Замыкания делают функции “умными” — они хранят данные и поведение вместе, формируя капсулу логики.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤12🔥11😁9
This media is not supported in your browser
VIEW IN TELEGRAM
От хитрых нюансов типов данных и замыканий до глубокой логики this и работы событийного цикла - здесь разжёвано то, что обычно путает даже опытных разработчиков. Каждый пример сопровождается пояснением!
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥12❤9😁4🤝3
Привет! В этом гайде создаём простой секундомер - он запускается, останавливается и сбрасывается с помощью трёх кнопок, а логика построена на setInterval.
Ключевые моменты:
• HTML: разметка дисплея времени и кнопок управления.
• CSS: центрирование, аккуратный интерфейс и отзывчивые кнопки.
• JS: запуск, остановка и сброс счётчика через setInterval и clearInterval.
Такой мини-проект отлично подходит для тренировки работы с таймерами, интервалами и обработчиками событий.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26❤10🤝8🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Хочешь прокачать навыки HTML, CSS или JavaScript без скучных учебников? На Codepip учёба превращается в лёгкий и увлекательный процесс. Каждый уровень - это маленький челлендж, который заставит думать как программист и писать правильный код.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤15🔥8
Атрибут
d описывает путь, который будет отрисован элементом <path>. Значение атрибута — строка со списком команд, написанных особым образом. Доступные команды:
• Перемещение кисти — M, m;
• Прямая линия — L, l, H, h, V, v;
• Кубическая кривая Безье — C, c, S, s;
• Квадратичная кривая Безье — Q, q, T, t;
• Эллиптическая кривая — A, a;
• Закрытие пути — Z, z.
Числа в описании пути могут быть разделены пробельными символами или запятыми, причем нет ограничений в каких ситуациях запятую можно, а в каких нет.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍11🔥8🤝4
Определяем HEX-код базового цвета по названию!
Узнаем HEX цвета прямо из консоли браузера, без библиотек и сайтов - всё решается нативным JS.
Шаг 1 — вводим название цвета:
Шаг 2 — создаём элемент и получаем его реальный цвет:
Шаг 3 — конвертируем RGB в HEX:
Шаг 4 — небольшая обработка ошибки:
Пример:
🔥 Практика на работу со стилями, DOM и конвертацией цветов из RGB в HEX.
📣 Code Ready | #практика
Узнаем HEX цвета прямо из консоли браузера, без библиотек и сайтов - всё решается нативным JS.
Шаг 1 — вводим название цвета:
const colorName = prompt("Enter a color name:");Шаг 2 — создаём элемент и получаем его реальный цвет:
try {
const div = document.createElement("div");
div.style.color = colorName.toLowerCase();
document.body.appendChild(div);
const rgb = getComputedStyle(div).color;
document.body.removeChild(div);Шаг 3 — конвертируем RGB в HEX:
const hex = rgb.match(/\d+/g)
.map(x => (+x).toString(16).padStart(2, "0"))
.join("");
console.log(`Hex code for '${colorName}' is: #${hex}`);
Шаг 4 — небольшая обработка ошибки:
} catch {
console.log("Invalid color name. Try names like 'red', 'skyblue', 'orange'.");
}Пример:
Enter a color name: Silver - #c0c0c0
Enter a color name: Yellow - #ffff00
🔥 Практика на работу со стилями, DOM и конвертацией цветов из RGB в HEX.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24❤11👍7
Привет! В этом гайде создаём адаптивное поле ввода текста, которое само увеличивается по мере набора.
Ключевые моменты:
• HTML: компактная разметка с label и textarea.
• CSS: лёгкий дизайн, мягкие тени и фокус-эффект.
• JS: автоматическое изменение высоты на основе scrollHeight.
Такой элемент отлично подойдёт для чатов, форм обратной связи или комментариев — там, где важно, чтобы поле “росло” вместе с текстом.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26❤9🤝7🔥3