Node.js Backend | YeaHub – Telegram
Node.js Backend | YeaHub
522 subscribers
166 photos
15 videos
416 links
Теория, подготовка к интервью и курсы для Node.js разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
👨🏻‍💻 NodeJs Developer

Компания SP&D занимается разработкой маркетплейса бытовых услуг

Что и как?

▪️ От 3 000 до 5 000 $
▪️ График 5/2
▪️ Опыт от 3-ех лет
▪️ Удалёнка

📩 Изучить вакансию
🔥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
#ЧеКак
🤔 Создание простого сервера для сокращения URL

Создайте простой сервер на Node.js с использованием Express, который принимает длинный URL и возвращает сокращённую версию. При переходе по сокращённому URL сервер должен перенаправлять на исходный URL.

Решение задачи

npm init -y
npm install express nanoid

const express = require('express');
const { nanoid } = require('nanoid');

const app = express();
const port = 3000;

app.use(express.json());

const urlDatabase = {};

// Создание сокращенного URL
app.post('/shorten', (req, res) => {
const { url } = req.body;
if (!url) {
return res.status(400).json({ error: 'URL is required' });
}

const id = nanoid(6);
urlDatabase[id] = url;
res.json({ shortUrl: `http://localhost:${port}/r/${id}` });
});

// Перенаправление по сокращенному URL
app.get('/r/:id', (req, res) => {
const originalUrl = urlDatabase[req.params.id];
if (originalUrl) {
res.redirect(originalUrl);
} else {
res.status(404).send('URL not found');
}
});

// Запуск сервера
app.listen(port, () => {
console.log(`Server is running on http://localhost:${port}`);
});


👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓 Какой из следующих модулей является встроенным в
Node.js и используется для работы с файловой системой?
Anonymous Quiz
12%
http
76%
fs
12%
express
0%
mongoose
#Вакансии
👨‍💻 Node js разработчик

"СЕОТЛТ" специализируется на создании уникальных информационных систем.


Что и как?

▪️ от 1 до 3 лет
▪️ От 130000 до 150000 руб
▪️ Офис/удаленно

📩 Изучить вакансию
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Что такое 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('Завершено!'));


👉Новости 👉Платформа
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


👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Что такое Intersection Observer?

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);


👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Что такое path.resolve()?

🟠Это метод модуля path в Node.js, который возвращает абсолютный путь, объединяя переданные сегменты пути. Он полезен для построения пути к файлам и директориям независимо от текущей рабочей директории.

Пример

const path = require('path');

// Построение абсолютного пути
const fullPath = path.resolve('folder', 'subfolder', 'file.txt');
console.log(fullPath); // Например: /Users/username/project/folder/subfolder/file.txt


В этом примере path.resolve() объединяет сегменты пути и возвращает абсолютный путь к файлу. Это помогает избежать проблем с относительными путями и улучшает кросс-платформенность приложений.


👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#Вакансии
👨‍💻 Senior Backend Developer (Node js)

Разработка фандрайзинговой платформы Fundraise Up. Цель в том, чтобы быть самым удобным и самым быстрым способом сделать донат в пользу некоммерческого фонда.

Что и как?

▪️ 6 лет
▪️ От 3800$ до 6300$
▪️ Офис/удаленно

📩 Изучить вакансию
Please open Telegram to view this post
VIEW IN TELEGRAM