Обновить
228.77

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Прекратите использовать console.log

Время на прочтение2 мин
Охват и читатели34K

Прекратите использовать console.log для всего ?. Я вижу, как многие разработчики регулярно используют console.log метод таким образом, который я считаю неправильным.

Недостатки использование console.log для отладки

Многие разработчики до сих пор используют console.log метод для отладки своего приложения. Например, чтобы убедиться, что код запускается или что переменная имеет правильное значение.

Вы не можете отследить жизненный цикл вашего приложения, лишь отслеживаете значение переменной в данный момент времени.

Часто случается так, что console.log забываются в нескольких местах кода, что кроме гипотетической потери производительности (мизерной, но размер которой варьируется в зависимости от объема данных, вызываемых через метод console.log) загрязняя ваш код.

Решение состоит в том, чтобы использовать инструменты отладки, предоставляемые вашим браузером. Это может потребовать некоторого обучения, но вознаграждение перевешивает усилия ?.

Прекратите использовать console.log

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

Время на прочтение3 мин
Охват и читатели7.5K

⚛ Джентльменский набор React компонентов FullStack разработчика для управления потоком данных.

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

Читать далее

Фронтенд-новости №14. Bun: новая среда выполнения JavaScript, руководство по созданию форм, «Дней без ошибок в коде: 0»

Время на прочтение3 мин
Охват и читатели8.2K

Дайджест новостей и полезных статей из мира фронтенд-разработки за неделю 4–10 июля.

Читать далее

Недооцененная альтернатива для HOC’ов и кастомных хуков в react и при чем здесь React.CloneElement?

Время на прочтение8 мин
Охват и читатели5.5K

При создании react-приложений часто появляется необходимость расширить функционал уже существующего компонента или переиспользовать общий кусок логики между компонентами, желательно минимально не вмешиваясь в реализацию целевого компонента. У большинства разработчиков в таком случае мысль в первую очередь обращается к использованию HOC (hight order component или по-русски компонент высшего порядка) или же кастомных хуков. Однако у меня нет никакого желания пересказывать вам уже всем давно известные паттерны, которые вы, вероятно, знаете даже лучше меня.

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

Читать далее

Node.js: использование веб-потоков. Часть 2

Время на прочтение16 мин
Охват и читатели5.1K


Привет, друзья!


Представляю вашему вниманию перевод второй части этой замечательной статьи.


Ссылка на первую часть.


Веб-потоки (web streams) — это стандарт для потоков (streams), который поддерживается всеми основными веб-платформами: веб-браузерами, Node.js и Deno. Потоки — это абстракция для чтения и записи данных последовательно, небольшими частями из любого вида источника — файлов, данных, находящихся на сервере, и т.д.


Например, глобальная функция fetch (которая используется для загрузки онлайн-ресурсов) асинхронно возвращает ответ (Response), содержащий свойство body с веб-потоком.


В данной статье рассматриваются веб-потоки в Node.js, но то, о чем мы будем говорить, применимо к любой поддерживающей их платформе.

Читать дальше →

Ecma International утвердила ECMAScript 2022: что в ней нового?

Время на прочтение6 мин
Охват и читатели19K

22 июня 2022 123-я ассамблея Ecma General утвердила языковую спецификацию ECMAScript 2022, а значит, она стала официальным стандартом.

В посте разберемся, какие обновления добавлены в эту версию.

Читать далее

Парсинг дат в JS — добавляем русский язык в библиотеку Chrono

Время на прочтение3 мин
Охват и читатели6.9K

Crono это парсер дат на естественном языке. Кроме формальных ISO 8601 или dd.MM.yyyy, распознает варианты а-ля «в среду утром‎», «с 10 до 11 вечера», «2 часа 5 минут назад» и т.п. Поддерживает 8 языков, в том числе, теперь, и русский.

Читать далее

Telegram Web Apps (Повторное открытие последней страницы)

Время на прочтение4 мин
Охват и читатели18K

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

Теперь взаимодействие с ботами стало очень интерактивным, так как мы обладаем возможностью интегрировать в ботов полноценные веб-приложения.

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

Сперва, может показаться, что это не является проблемой, но на самом деле очень легко случайно закрыть веб-окно, так как оно не открывается на весь экран, а чтобы закрыть его, достаточно потянуть его вниз и мы теряем всё предыдущее состояние приложения.

Читать далее

Как с помощью Core Web Vitals влюбить в свой сайт пользователей и поисковые системы

Время на прочтение14 мин
Охват и читатели7.8K

Рассказываем, почему разработчики нашей компании уделяют большое внимание Core Web Vitals и как эти метрики помогают повысить качество взаимодействия веб-ресурса с пользователем. В конце материала — подробная таблица с основными рекомендациями по улучшению CWV и способами решения разных задач, которые мы применяем.

Читать далее

Хочу перемен: почему пора переходить на Vue 3

Время на прочтение10 мин
Охват и читатели37K

Привет! Меня зовут Влад, я frontend-разработчик в компании SimbirSoft. Мне приходилось создавать приложения как на старых версиях Vue, так и на новых. Причем многие из моих коллег вполне успешно разрабатывают на Vue 2 и не спешат переходить на Vue3, даже спустя два года после релиза.

Что же касается бизнеса и владельцев продуктов, в моей практике также встречались кейсы и примеры, когда заказчики не понимали всех преимуществ использования новой версии.

В этой статье попытался раскрыть новшества, которые могут стать «триггером» для миграции на новую технологию для обеих заинтересованных групп. Поговорим об экосистеме Vue 3, о новинках и пользе для разработчиков и бизнеса. И, разумеется, сравним Vue 2 и Vue 3 с технической точки зрения. Также рассмотрим одно из главных нововведений фреймворка – Composition API, раскроем технические нюансы и определим лучшие кейсы использования нового API.

Читать далее

Сравнение JavaScript операторов typeof и insanceof

Время на прочтение3 мин
Охват и читатели6.2K

В JavaScript есть операторы typeof и instanceof, на первый взгляд они похоже, но они выполняют разные функции.

В этой статье будет рассмотрена разница между ними и показаны примеры использования.

Читать далее

Повторное использование компонентов: живи, работай, повторяем цикл

Время на прочтение4 мин
Охват и читатели5K

Reusability, т. е. повторное использование компонентов ― весьма популярный метод в разработке ПО, веб-сервисов, дизайна и т. п. Огромным преимуществом повторного использования компонентов является экономия средств и времени на разработку ПО. Почему? Если систематизировать повторное использование компонентов, то сокращаются расходы на создание и обслуживание проектов, уменьшаются сроки разработки таких систем, во многих случаях повышается качество программных продуктов. Сегодня предлагаем поговорить об этом методе относительно веб-сайтов, JavaScript и ReactJS.

Если эта тема интересна, то давайте обсудим всё под катом. К слову, статья не очень большая, в ней приводится лишь один пример для Redux, который даёт общее понимание вопроса. А в комментариях давайте обсудим ваш опыт и идеи, которые вы используете в ежедневной работе.

Читать далее

Сравнение JavaScript операторов typeof и insanceof

Время на прочтение3 мин
Охват и читатели11K

В JavaScript есть операторы typeof и instanceof, на первый взгляд они похоже, но они выполняют разные функции.

В этой статье будет рассмотрена разница между ними и показаны примеры использования.

Читать далее

Ближайшие события

Node.js: использование веб-потоков. Часть 1

Время на прочтение19 мин
Охват и читатели14K


Привет, друзья!


Представляю вашему вниманию перевод первой части этой замечательной статьи.


Ссылка на вторую часть.


Веб-потоки (web streams) — это стандарт для потоков (streams), который поддерживается всеми основными веб-платформами: веб-браузерами, Node.js и Deno. Потоки — это абстракция для чтения и записи данных последовательно, небольшими частями из любого вида источника — файлов, данных, находящихся на сервере, и т.д.


Например, глобальная функция fetch (которая используется для загрузки онлайн-ресурсов) асинхронно возвращает ответ (Response), содержащий свойство body с веб-потоком.


В данной статье рассматриваются веб-потоки в Node.js, но то, о чем мы будем говорить, применимо к любой поддерживающей их платформе.

Читать дальше →

Разрабатываем универсальную форму на React и XState или новые приключения конечного автомата

Время на прочтение9 мин
Охват и читатели12K

Вопреки мнению, которое я видел в комментах к статьям о конечных автоматах, я не считаю, что их применение это какой-то "спагетти". Наоборот они позволяют реализовать довольно сложную state transition логику.

Хотя автомат из 100500 стейтов с вложенными и параллельным стейтами, пожалуй, будет слабо читаемым. Но это уже тема для Separation of Concerns - разделения ответственности.

В этой статье я хочу рассмотреть замечательный инструмент XState.

Который позволяет как описывать эти автоматы, так и рисовать в редакторе и визуализировать.

Читать далее

Как посчитать длину текста и не привлекать внимание санитаров

Время на прочтение10 мин
Охват и читатели36K

Привет! Меня зовут Алексей Ивасюта, я фронтенд-разработчик в Авито в кластере Seller Experience. В этой статье я расскажу, как правильно рассчитать длину текста в Java Script. Эта статья будет одинаково полезна как начинающим разработчикам, так и весьма опытным. Благодаря ей вы поймете устройство Unicode и особенности его работы в JS.

Читать далее

Как я перешел из нефтянки в IT за 1 год

Время на прочтение19 мин
Охват и читатели50K

Меня зовут Багрянцев Максим, бывший сотрудник компании Роснефть, в настоящее время являюсь frontend developer в компании Mechanica.

Привет, Хабр! Хочу поделиться своим жизненным опытом с теми людьми, кто еще сомневается идти ли в IT или оставить все как есть.

Написать данную статью меня сподвигла сама идея помочь читателю определиться с выбором, так как я хорошо понимаю на сколько трудно решиться кардинально сменить сферу деятельно и начать все с чистого листа.

Я же когда принимал такое решение, то искал вдохновение и мотивацию в историях реальных людей и мне это очень сильно помогло. Поэтому желаю вам приятного прочтения данной статьи, а самое главное успехов в ваших начинаниях!

Читать далее

Fresh – новый full stack фреймворк для Deno

Время на прочтение6 мин
Охват и читатели7.8K


Привет. Недавно вышла первая стабильная версия Fresh, а на Хабре ни одного холивара про это! Нужно срочно исправить! Под катом обзор архитектуры, примеры, плюсы и минусы фреймворка.

Читать далее

Фронтенд-новости №13. Релиз Vue 2.7, табы против пробелов Prettier, W3C — некоммерческая организация

Время на прочтение4 мин
Охват и читатели6.3K

Дайджест новостей и полезных статей из мира фронтенд-разработки за неделю 27 июня–3 июля.

? Вышел Vue 2.7 «Naruto».

? Большое обсуждение, что использовать в prettier — табы или пробелы.

? W3C станет некоммерческой организацией, представляющей общественные интересы с января 2023 года.

Что там у вас ещё

Веб-разработчик — Яндекс.Практикум: отзыв о программе. Ошибка или нет?

Время на прочтение7 мин
Охват и читатели22K

Хочу поделиться своим собственным опытом учёбы в Яндекс.Практикуме (далее ЯП) 2021-2022 г. по программе веб-разработчик, 10 месяцев (фронтенд).

Читать далее

Вклад авторов