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
🤓 Какой метод служит для удаления файлов?
Anonymous Quiz
61%
fs.delete()
0%
fs.off()
39%
fs.unlink()
0%
fs.empty()
#ЧеКак
🤔 Что такое стек вызовов и является ли он частью движка V8?

Стек вызовов (Call Stack) является частью V8. Это структура данных, которую V8 использует для отслеживания вызовов функций. Каждый раз, когда вызывается функцию, V8 помещает ссылку на эту функцию в стек вызовов.

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM