Простой JavaScript
6.53K subscribers
1.07K photos
47 links
JavaScript человеческим языком.
Аудитория: Frontend разработчики, верстальщики, люди, интересующиеся языком программирования JavaScript.

Сотрудничество: @noname_media

Канал на бирже: telega.in/channels/simple_js/card?r=-Cl9H

Perfluence
Download Telegram
Избегание магических значений

Используйте константы для избегания магических чисел и значений в коде.

#качествокода
Использование строгого равенства и неравенства

Используйте === и !== для предотвращения неявного преобразования типов.

#качествокода
Разделение кода на функции с одним уровнем абстракции

Каждая функция должна выполнять только одну задачу с одним уровнем абстракции.

#качествокода
Разделение ответственностей в классах

Каждый класс должен иметь четко определенную ответственность.

#качествокода
Использование Map и Set вместо объектов и массивов для уникальных данных

Set и Map предоставляют удобные методы для работы с уникальными данными.

#качествокода
Валидация входных данных

Предотвращение выполнения кода с некорректными входными данными.

#качествокода
Использование объектов для конфигурации

Использование объектов для передачи конфигурационных параметров делает код более читаемым.

#качествокода
Применение принципов SOLID при проектировании классов

Принципы SOLID (Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion) обеспечивают гибкость, поддерживаемость и читаемость кода.

#качествокода
Разделение больших функций на более мелкие

Разделение больших функций на меньшие помогает обеспечить читаемость и упрощает тестирование и поддержку кода.

#качествокода
Использование иммутабельности для предотвращения неожиданных изменений данных

Избегайте изменения данных напрямую и предпочитайте создание новых объектов или массивов для сохранения неизменяемости данных.

#качествокода
Использование констант вместо магических чисел

Использование констант делает код более читаемым и обеспечивает единое значение по всему коду.

#качествокода
Использование async/await для обработки ошибок в асинхронной функции

Внутри async функции можно использовать try/catch для обработки ошибок, которые возникают при выполнении асинхронных операций.

#промисы
Использование Promise.allSettled для выполнения промисов с разными результатами

Promise.allSettled позволяет выполнить все промисы и получить информацию о каждом из них, независимо от результата.

#промисы
Использование Promise.reject для создания отклоненного промиса

Promise.reject создает отклоненный промис с указанным сообщением об ошибке.

#промисы
Использование Promise.resolve для создания успешного промиса

Promise.resolve создает успешный промис с указанным значением.

#промисы
Object.values()

Возвращает массив значений объекта.

#функции
Ожидание выполнения промисов в определенной последовательности

Здесь мы обеспечиваем выполнение промисов в порядке итерации по массиву promises.

#промисы
Использование async/await в цикле

Этот пример демонстрирует использование async/await в цикле для выполнения асинхронных операций в определенной последовательности.

#промисы
Ожидание выполнения промиса с таймаутом

Promise.race ожидает первого выполненного промиса и может использоваться для установки временного ограничения.

#промисы
Преобразование колбэка в промис с util.promisify

util.promisify преобразует асинхронную функцию использующую колбэк, в промис, что делает ее удобной для использования с async/await.

#промисы