Telegram Web Link
👩‍💻 Когда не стоит использовать метод find() в JavaScript

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4💯1
👩‍💻 Удаление объектов с дубликатами по ключу

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

Пример:

const data = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Alice' },
{ id: 4, name: 'Charlie' },
{ id: 5, name: 'Bob' }
];

const result = removeDuplicatesByKey(data, 'name');
console.log(result);
// Ожидаемый результат:
// [
// { id: 1, name: 'Alice' },
// { id: 2, name: 'Bob' },
// { id: 4, name: 'Charlie' }
// ]


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

function removeDuplicatesByKey(array, key) {
const seen = new Set();
return array.filter(item => {
const value = item[key];
if (seen.has(value)) {
return false;
}
seen.add(value);
return true;
});
}

// Пример использования:
const data = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Alice' },
{ id: 4, name: 'Charlie' },
{ id: 5, name: 'Bob' }
];

const result = removeDuplicatesByKey(data, 'name');
console.log(result);
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
🔎 Подборка вакансий для джунов

Junior+ разработчик back-end Node.js (JavaScript, TypeScript)
🟢Node.js, Express.js, TypeScript, PostgreSQL, PrismaORM, Redis, Docker, Gitlab CI/CD
🟢до 120 000 ₽ на руки | Без опыта

Junior Backend Developer
🟢Golang, Ruby on Rails, Node.js (Koa 2), PostgreSQL, MongoDB, Redis, Apache Kafka, WebSockets, JWT, Docker, Kubernetes
🟢от 60 000 ₽ на руки | Без опыта

Full-stack Web Developer
🟢JavaScript, TypeScript, React.js, Node.js, NestJS, PostgreSQL
🟢Уровень дохода не указан | Без опыта

NodeJS-разработчик в интегратор amoCRM
🟢Node.js, TypeScript, JavaScript, Go, MongoDB, REST API
🟢Уровень дохода не указан | от 1 до 3 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡3🗿2
👩‍💻 Тестирование Node.js с использованием Mocha, Chai и Sinon

JavaScript и Node.js имеют множество библиотек тестирования и утверждений, таких как Jest, Jasmine, Qunit и Mocha. В этой статье мы рассмотрим, как использовать Mocha для тестирования, Chai для утверждений и Sinon для моков, шпионов и стабов.

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

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

➡️ Пример:

const path = require('path');

const fullPath = path.join(__dirname, 'files', 'example.txt'); // Объединение путей
console.log(fullPath); // Полный путь к файлу

console.log(path.basename(fullPath)); // example.txt (имя файла)
console.log(path.extname(fullPath)); // .txt (расширение файла)


🗣️ В этом примере модуль path используется для создания и анализа путей к файлам, что упрощает работу с файловой системой в Node.js.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
📝 Подборка вакансий для мидлов

Бэкенд разработчик
JavaScript, TypeScript
Уровень дохода не указан | от 2 лет

Системный аналитик
React, Node.js, MongoDB, PostgreSQL
до 200 000 ₽ | Требуемый опыт не указан

Middle Typescript разработчик (Telegram боты)
JavaScript, Node.js, TypeScript, создание Telegram-ботов, Redis, MongoDB, REST
Уровень дохода не указан | от 2 лет

Разработчик Node.js («Сборка заказов»)
Node.js, TypeScript, JavaScript, MongoDB, Apache Kafka, ClickHouse, Elasticsearch
Уровень дохода не указан | от 2 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🥰1
💬 Добавление поддержки нескольких языков в NestJS и Angular приложениях

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Сервер, возвращающий случайную цитату

Создайте HTTP-сервер на Node.js, который по запросу возвращает случайную цитату из заранее заданного списка.

Ожидаемое поведение:

Сервер запускается на порту 3000.
При GET-запросе на /quote сервер возвращает JSON с случайной цитатой.
При запросе на другой путь возвращается сообщение об ошибке.

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

const http = require('http');

const quotes = [
"The only limit to our realization of tomorrow is our doubts of today.",
"Do not watch the clock. Do what it does. Keep going.",
"The future depends on what you do today.",
"Success is not the key to happiness. Happiness is the key to success.",
"Hardships often prepare ordinary people for an extraordinary destiny."
];

const server = http.createServer((req, res) => {
res.setHeader('Content-Type', 'application/json');

if (req.url === '/quote' && req.method === 'GET') {
const randomQuote = quotes[Math.floor(Math.random() * quotes.length)];
res.writeHead(200);
res.end(JSON.stringify({ quote: randomQuote }));
} else {
res.writeHead(404);
res.end(JSON.stringify({ error: 'Invalid endpoint' }));
}
});

server.listen(3000, () => {
console.log('Сервер запущен на http://localhost:3000');
});
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3👎3
⚙️ Четыре пункта, как улучшить код Backend стажера

В статье разобраны распространенные проблемы в коде начинающих разработчиков с конкретными решениями: грамотная инъекция зависимостей, использование Scoped-сервисов, паттерн Generic Repository и создание Stateless-классов.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Слабоумие и отвага: как найти ликвидные облигации с доходностью до 40% и ежемесячными фиксированными выплатами

Статья исследует облигации с доходностью до 40% и ежемесячными купонами. Описаны инструменты поиска ликвидных облигаций, риски инвестирования в ВДО и их зависимость от ключевой ставки.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
😐3🤔1
📝 Подборка вакансий для сеньоров

Video (live-calls) streaming developer
WebRTC, HLS, DASH, JavaScript, Svelte/Vue/React, TypeScript, WebSocket, Node.js, Nest.js, MongoDB
от 4 500 € | от 3 лет

Fullstack Vue/Node.js разработчик
Vue.js, VUEX, Node.js, npm, Bootstrap 3-4, JavaScript, DOM, npm, git, jira, Parcel, Webpack, Gulp
Уровень дохода не указан | от 4 лет

Разработчик в группу мобильных интерфейсов автономного транспорта
React, TypeScript, webpack, WebSockets, Linux, Playwright
Уровень дохода не указан | Требуемый опыт не указан

Разработчик Node.js («Управление контентом»)
Node.js, TypeScript, JavaScript, MongoDB, ClickHouse, Elasticsearch, Docker, Kubernetes, Linux, Nest.js, Nginx, GitLab CI
Уровень дохода не указан | от 2 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🤡1
⚙️ Что бы я хотел знать о Postgres, когда начал его изучать

Я профессионально работаю над веб-приложениями уже более десяти лет, и за это время пришлось научиться использовать множество различных систем и инструментов. В процессе обучения я обнаружил, что официальная документация, как правило, оказывается наиболее полезной.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
⚙️ Что такое events модуль в Node.js?

events — это встроенный модуль в Node.js для работы с событиями. Он позволяет испускать и обрабатывать пользовательские события.

➡️ Пример:

const EventEmitter = require('events');

// Создаем новый экземпляр EventEmitter
const emitter = new EventEmitter();

// Добавляем обработчик события
emitter.on('greet', (name) => {
console.log(`Привет, ${name}!`);
});

// Испускаем событие
emitter.emit('greet', 'Иван');


🗣️ В этом примере событие greet создаётся и обрабатывается с использованием EventEmitter. Это основной инструмент для реализации событийной архитектуры в Node.js.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5😁1
➡️ Web Performance API: Измерьте важное

От медленного к быстрому: Использование JavaScript Performance API для оптимизации веб-приложений

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🎄3
👩‍💻 Array.filter() под микроскопом: секреты работы с массивами

В статье подробно разбирается метод Array.prototype.filter() в JavaScript. Поговорим о его внутреннем механизме, особенностях работы и нюансах, которые могут быть полезны разработчикам.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🌐 Отключи «информационный шум»

Сидишь за задачей, но каждые 5 минут отвлекаешься на Slack, почту или уведомления? Эти мелочи съедают фокус, даже если тебе кажется, что ты всё контролируешь.

👉 Совет: включай режим «Не беспокоить» в течение рабочего блока (например, на 50 минут) и используй time-tracking приложения. Удивишься, насколько продуктивнее ты станешь, если будешь работать в режиме глубокой концентрации.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍1
🔎 Подборка зарубежных вакансий

Senior backend developer (Node.JS)
🟢Node.js, JavaScript (ES6+), Express.js, PostgreSQL, MongoDB, Redis, Docker, Git, RESTful API, WebSocket, TypeScript, Kafka, Nest.js, GraphQL, socket.io
🟢Уровень дохода не указан | от 3 до 6 лет

Front-End Developer
🟢React, React Hooks, TypeScript, JavaScript (ES6+), Redux, MobX, Zustand, Recoil, RESTful APIs, React Query, HTML5, CSS3, Jest, React Testing Library, Webpack, npm, yarn, CI/CD, Node.js, Next.js, GraphQL, gRPC, Docker, Tailwind, SCSS, NextJS, Bootstrap, MetaMask, Wallet Connect
🟢Уровень дохода не указан | от 3 до 6 лет

Javascript Developer
🟢JavaScript (ES5/ES6), Angular, Node.js, NPM, React, Vue.js, Tailwind, SCSS, NextJS, Bootstrap, TypeScript
🟢Уровень дохода не указан | от 3 до 6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡41👍1
👩‍💻 Паттерны для эффективного манипулирования DOM с ванильным JavaScript

В руководстве рассматриваются такие шаблоны работы с DOM на JavaScript, как выбор правильного querySelector, кэширование элементов и улучшение обработки событий.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
👩‍💻 Создание простого сервера для статических файлов

Создайте HTTP-сервер на Node.js, который раздаёт статические файлы из указанной папки. По умолчанию сервер должен обслуживать файлы из папки public и работать на порту 3000.

Создайте структуру папок:

project/
├── server.js
└── public/
└── index.html


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

Файл server.js:

const http = require('http');
const fs = require('fs');
const path = require('path');

const PORT = 3000;
const PUBLIC_DIR = path.join(__dirname, 'public');

const server = http.createServer((req, res) => {
let filePath = path.join(PUBLIC_DIR, req.url === '/' ? 'index.html' : req.url);

fs.readFile(filePath, (err, data) => {
if (err) {
res.writeHead(404, { 'Content-Type': 'text/plain' });
res.end('404 Not Found');
} else {
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end(data);
}
});
});

server.listen(PORT, () => {
console.log(`Сервер запущен на http://localhost:${PORT}`);
});

Файл public/index.html (пример содержимого):

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Static Server</title>
</head>
<body>
<h1>Добро пожаловать на мой сервер!</h1>
</body>
</html>

node server.js
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
2025/07/10 19:17:54
Back to Top
HTML Embed Code: