Category : javascript

javascript
Вайбкодинг: как сгенерировать код расширения для визуализации ссылок в закладках браузера с помощью…

Знакомо чувство, когда читаешь документацию, а через десяток страниц уже не помнишь, что именно успел изучить? Или когда возвращаешься к старой статье и не можешь понять – ты уже видел эту ссылку или нет?В эпоху информационного перегруза даже закладки перестают быть спасением – они просто копятся где‑то на панели, а на странице по‑прежнему нет никаких намеков, что ты здесь уже был.Но что если заставить браузер самому отмечать ссылки, которые у вас уже сохранены? Чтобы слева от каждой знакомой с…

  • вторник, 20 января 2026 г. в 00:00:08
javascript
Генерация колоды карт

В очередной раз столкнулся с тем, что разработчик игры (в качестве демо-версии программных функций) использовал генератор случайных чисел "в лоб", что повлекло за собой повторы ходов (игра была "морской бой", и клетка, по которой стрелял компьютер определялось как Math.floor(Math.random()*100), что подразумевает бесконечное повторение ходов). Поэтому хочу предложить простой и эффективный способ создать последовательность случайных чисел без повторения. Этот способ основан на пер…

  • вторник, 20 января 2026 г. в 00:00:07
javascript
Мои любимые паттерны для full-stack и frontend-проектов

После работы над множеством фронтенд- и full-stack-проектов (в основном React + TypeScript + какой-нибудь сервер/бэкенд), я постоянно возвращаюсь к одному и тому же небольшому набору паттернов. Они добавляют структуру, снижают когнитивную нагрузку и делают кодовую базу поддерживаемой даже при росте.Это не революционные идеи — просто прагматичные решения, которые хорошо работают в разных приложениях. Вот текущий набор, который я использую почти всегда.1. React Query + фабрика ключей запросов (Qu…

  • вторник, 20 января 2026 г. в 00:00:06
javascript
Округление и форматирование чисел в React: адаптивный подход

Всем привет, на связи снова я — Дмитрий, React-разработчик. И сегодня хочу поднять тему, которая на первый взгляд кажется простой, но на практике может доставить немало сюрпризов - округление и форматирование чисел в интерфейсе.Изначально может показаться, что здесь сложного практически ничего нет: есть toFixed() и toLocaleString(), но практика показывает, что реальные интерфейсы почти никогда в это не укладываются.Почему? Потому что в разных диапазонах чисел пользователи ждут разного поведения…

  • вторник, 20 января 2026 г. в 00:00:05
javascript
Почему свой игровой движок — это проще, чем кажется

Команда JavaScript for Devs подготовила перевод большой практической статьи о создании игрового движка с нуля — без шейдеров, GPU-магии и «взрослых» фреймворков. Автор шаг за шагом показывает, как из простых веб-примитивов вырастает полноценная игра, а затем — универсальный движок, и почему такой подход даёт больше свободы и выразительности, чем готовые решения.Мы собираемся написать игровой движок на JavaScript — без AI, и под AI я имею в виду LLM. Да, ребята, это будет олдскул. Если, конечно,…

  • вторник, 20 января 2026 г. в 00:00:03
javascript
Релиз Capacitor 8

Пока Я нахожусь в процессе написания второй статьи из цикла про capacitor, решил выпустить в виде статьи перевод анонса Capacitor 8 с замечаниями по миграции с предыдущей версии. Статья предназначена для тех, кто уже использует платформу в продакшене и не подписан на новости платформы. Если у вас есть приложение на Capacitor 7, переход на новую версию вполне логичен.В статье разберём:какие изменения появились в Capacitor 8;зачем имеет смысл обновляться сейчас;как выглядит миграция с версии 7 на…

  • вторник, 20 января 2026 г. в 00:00:03
javascript
Оптимизация кода. Что быстрее: циклы vs стрелочные функции. Простая задача с собеседования

Привет, Хабр!Многие разработчики пишут код в условиях неопределенности. Перечислим их:Недостаток требований"В первый раз". Новая задача через исследованиеТоропятсяЗнают только некоторые приемы, их используют вездеНе погружаются глубже в задачуПрименяют допущения, которые работают не во всех случаяхВ данной статье хочу разобрать простейшую задачу с собеседования. Уровень задачи элементарный, но как показывает практика, этот инструментарий регулярно упускается из виду.ВведениеЭто не конкр…

  • понедельник, 19 января 2026 г. в 00:00:04
javascript
Функции-конструкторы и оператор new в JavaScript

Привет, меня зовут Саша, и я разрабатываю на JavaScript. В прошлый раз мы разбирались с методами объектов и идентификатором this, научившись делать объекты по-настоящему живыми и независимыми.Сегодня двинемся дальше. Покажу, как создавать множество однотипных объектов, не копируя код раз за разом. Мы разберемся с функциями-конструкторами и оператором new — тем самым фундаментом, на котором строятся современные классы в JavaScript. Как всегда, расскажу все доступно и просто, поехали!Функции для …

  • суббота, 17 января 2026 г. в 00:00:08
javascript
Кейс: как использовать frontend-фичи и UX для оптимизации трафика на примере Дзена

Привет, Хабр!Продолжаю писать статьи на тему хорошего кода и архитектуры.В этой статье разберу сценарий оптимизации работоспособности систем на примере кабинета Дзена с точки зрения UX.ВведениеВсе мы любим статистику и аналитику. Сразу после публикации любого поста, статьи, аудио, видео хочется сходить в нужный раздел frontend'а и посмотреть - закрутилось или не закрутилось, есть ли показы, просмотры, лайки, комментарии. Или всё сломано.Как правило, мы рассматриваем данный функционал, как ч…

  • суббота, 17 января 2026 г. в 00:00:06