Node.JS [ru] | Серверный JavaScript
11.4K subscribers
90 photos
5 videos
25 files
3.19K links
Все о разработке backend части на JavaScript (Node JS).
А так же: Express JS, Next JS, Nest, Socket.IO

Канал на бирже - https://telega.in/c/we_use_js

По вопросам рекламы или разработки: @g_abashkin

РКН: https://vk.cc/cJPGOP
加入频道
⚙️ Что такое Intersection Observer в JavaScript и зачем он используется?

Intersection Observer — это API, которое позволяет отслеживать, когда элемент входит или выходит из области видимости (viewport). Оно полезно для оптимизации ленивой загрузки изображений, бесконечной прокрутки или анимаций при прокрутке.

➡️ Пример:

// Целевой элемент для наблюдения
const target = document.querySelector('.observe-me');

// Callback-функция для обработки пересечений
const observerCallback = (entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
console.log('Элемент видим:', entry.target);
observer.unobserve(entry.target); // Останавливаем наблюдение
}
});
};

// Настройки наблюдателя
const observerOptions = {
root: null, // Вся область видимости
threshold: 0.5 // 50% видимости элемента
};

// Создаем наблюдатель
const observer = new IntersectionObserver(observerCallback, observerOptions);

// Начинаем наблюдение за элементом
observer.observe(target);


🗣️ В этом примере API отслеживает, когда .observe-me становится видимым на 50%. Intersection Observer делает прокрутку более производительной, так как избавляет от необходимости использовать события scroll.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
⚙️ Хост директивы: ключ к декомпозиции

Directive Composition API в Angular 15: hostDirectives в @Component/@Directive позволяет автоматически добавлять standalone-директивы, упрощая декомпозицию логики и внедряя новые подходы.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Что такое process.nextTick в Node.js и зачем он используется?

process.nextTick позволяет выполнять функцию сразу после текущей операции, но перед началом следующего цикла событий (event loop). Это полезно для выполнения задач с высоким приоритетом.

➡️ Пример:

console.log('Начало');

process.nextTick(() => {
console.log('Выполнено в nextTick');
});

console.log('Конец');

// Вывод:
// Начало
// Конец
// Выполнено в nextTick


🗣️ В этом примере process.nextTick выполняет функцию между выводом "Конец" и началом следующего цикла событий. Это помогает при обработке срочных задач.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
⚙️ Интернационализация (i18n) бэкенда в Express с использованием Intlayer

Недавно мне понадобилось добавить поддержку нескольких языков в API на базе Express. Я решил поделиться кратким руководством для тех, кто хочет сделать свой бэкенд отвечающим переведенным контентом в зависимости от предпочтительного языка пользователя.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
⚙️ Как работает деструктуризация объектов и массивов в JavaScript?

Деструктуризация — это удобный синтаксис в JavaScript, который позволяет извлекать значения из массивов и объектов и присваивать их переменным. Это делает код более лаконичным и удобным, особенно при работе с объектами с множеством свойств.

➡️ Пример:
// Деструктуризация объекта
const user = { name: 'Alice', age: 25 };
const { name, age } = user;
console.log(name); // 'Alice'
console.log(age); // 25

// Деструктуризация массива
const colors = ['red', 'green', 'blue'];
const [firstColor, secondColor] = colors;
console.log(firstColor); // 'red'
console.log(secondColor); // 'green'


🗣️ Деструктуризация полезна для удобного доступа к значениям из объектов и массивов, минимизируя дублирование кода и делая его более читаемым.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32😁21🐳1
👩‍💻 Изучение Символов JavaScript

Глубокое погружение в JavaScript Символы — что это такое, чем они важны и как их эффективно использо3вать

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51🔥1
➡️ Бесплатное обучение фулстек-разработке веб-сервиса с нуля по видео-урокам с исходным кодом и поддержкой

Статья представляет курс по созданию IT-продуктов: от выбора архитектуры до радости от разработки. Обучение включает 141 урок, доступный бесплатно, с акцентом на качество, масштабируемость и удобство работы.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍21🔥1
👩‍💻 WeakMap и WeakSet в JavaScript

Какие структуры данных помогут избежать утечек памяти в JavaScript? Статья раскрывает особенности WeakMap и WeakSet: слабые ссылки, автоматическое управление памятью и неожиданные сценарии их применения.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91🔥1
🧩 Если фича не помещается в голову целиком — разбей её

Чем больше логики ты пытаешься держать в голове, тем выше шанс ошибиться.

👉 Совет: если при работе над фичей ты постоянно перескакиваешь по файлам и путаешься — это сигнал, что задачу надо декомпозировать на меньшие части.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71🔥1
⚙️ Заставляем работать демонстрационный пример из официальной документации npm пакета csrf-csrf

Статья о решении проблемы с неработающим примером из документации npm-пакета csrf-csrf. Автор делится опытом исправления кода и создания рабочего демо, доступного на GitHub, с важными комментариями для успешного использования.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🐳1
👩‍💻 Работа с JavaScript Scheduler API

Откройте для себя возможности управления приоритетами и контроля выполнения задач в JavaScript с помощью нового Scheduler API. Новый подход поможет вам стать более продуктивными и эффективными в своей работе.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1🐳1
👩‍💻 Как работать с потоками в JavaScript: оптимизация асинхронных запросов

В статье объясняется асинхронное программирование в JavaScript. Разбираются основы работы с промисами, async/await и методы управления параллельными операциями для повышения читаемости и эффективности кода.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥1🐳1
⚙️ Что такое Promise.finally в JavaScript и зачем он используется?

Promise.finally — это метод, который выполняется после завершения промиса (успешного или с ошибкой), независимо от его результата. Это полезно для очистки ресурсов или выполнения финальных действий.

➡️ Пример:

const promise = new Promise((resolve, reject) => {
setTimeout(() => resolve('Успех!'), 1000);
});

promise
.then(result => console.log(result)) // 'Успех!'
.catch(error => console.error(error))
.finally(() => console.log('Завершено!'));


🗣️ В этом примере finally вызывается после завершения промиса, независимо от того, был он успешно выполнен или отклонён. Это удобно для задач, таких как закрытие соединений или очистка.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
31😁1🐳1
🛡 Парольная защита статичной HTML-страницы на JS

Как защитить веб-страницы паролем без серверной поддержки? Инструменты StatiCrypt и Portable Secret помогут зашифровать HTML с использованием AES-256. Статические страницы остаются безопасными даже на публичном хостинге.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1🐳1
👩‍💻 Как за 10 минут создать тестировщик нагрузки для API на Node.js

Почему разработка собственного инструмента для нагрузки на API иногда оказывается лучшим выбором? В статье обсуждается реальный кейс: задачи тестирования производительности, ограничения Postman и сложность JMeter. Узнайте, как и зачем был создан простой и эффективный API-лоадер на Node.js.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍311🔥1
👩‍💻 Почему важно проверять response.ok в Fetch API и почему HTTP-ошибки не вызывают отклонение промисов

Асинхронный JavaScript: разница между отправкой запроса и его результатом. Узнай, почему проверка response.ok важна для обработки ошибок на сервере, и как избежать ловушки, надеясь только на блок catch.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1😁1🐳1
➡️ Оптимизация React-приложений: Используем useTransition, useDeferredValue и useOptimistic для плавного UI

Узнайте, как использовать хуки React (useTransition, useDeferredValue и useOptimistic) для создания более отзывчивых интерфейсов. Советы, примеры и приёмы для плавной работы с данными!

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
32👍2🔥2😁1
👩‍💻 Расширения VSCode для комфортной работы с проектами

В статье рассказывается, как настроить рабочее пространство VSCode для разработки. Обзор полезных расширений, которые повышают удобство и продуктивность, и советы по их применению.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍5😁2🐳1