Category : javascript

javascript
WebAssembly: обзор технологии, эксперименты с числами и мечты о браузере без JS

WebAssembly находится в разработке уже более 8 лет. Технология прошла долгий путь развития и недавно разработчики из Bytecode Alliance выкатили версию 3.0.О WebAssembly уже много материалов, но сегодня нам важна сама суть. У нас есть возможность, воспользовавшись любым из доступных языков программирования, написать модуль с необходимой нам логикой и запустить в исполняемой среде браузера. Разработчики обещают: модули будут быстрее и безопаснее, чем JavaScript, а также созданные ранее технологии…

  • среда, 29 апреля 2026 г. в 00:00:13
javascript
Затенение в JavaScript

В статье о глобальной области видимости в JavaScript, мы коротко коснулись темы затенений (бурж. variable shadowing), в данной статье мы рассмотрим это явление подробнее.В одной области видимости, не может быть переменных или аргументов с одинаковыми именами. Нарушение данного правила ведёт к ошибке:function greetingUser(userName) {     let userName = 'Васятка' // Uncaught SyntaxError: Identifier 'userName' has already been declared     console.log(`Привет ${userName}`) } gr…

  • среда, 29 апреля 2026 г. в 00:00:09
javascript
Как я сделал SEO-дружелюбный поиск в React через History API и React Helmet

Я фронтенд-разработчик, и в одном из своих пет-проектов на React — сервисе с цветовыми палитрами — мне нужно было сделать функционал фильтров, токенов поиска и поиска по названию, где пользователь мог бы выбрать цвет, задать стиль палитры, отфильтровать по количеству цветов и вводить текстовый запрос. И все получилось: интерфейс удобный, всё меняется мгновенно, без перезагрузок, как и ожидается от современного приложения.Но возник простой вопрос: «А что из этого вообще видит поисковик?»И ответ…

  • среда, 29 апреля 2026 г. в 00:00:06
javascript
JavaScript Shader Language или JSSL

Хочу рассказать о генераторе GLSL-кода для WebGL, позволяющем писать шейдеры буквально на JavaScript с некоторыми условностями, используя все удобства IDE, такие как рефакторинг, подсветка синтаксиса, автокомплит и проверка на ошибки, а в математических выражениях использовать обычные JS операторы: +, -, *, /, =, +=, -=, *=, /=, ++, --.Сразу приведу пример рабочего кода, чтобы было понятно, о чем идет речь:class VertexShader extends Shader { constructor(POSITION, NORMAL, TANGENT, NORMAL_MATRI…

  • вторник, 28 апреля 2026 г. в 00:00:14
javascript
Иди слепо к своей цели, но будь готов упасть лицом в грязь

b0w9rПривет, Хабр. Я b0w9r.Полтора года назад мои знания в разработке находились на отметке 0.00. Кто-то из вас, возможно, помнит мою историю: я начинал учить HTML и CSS, выписывая теги ручкой в тетрадь, потому что у меня не было ни ноутбука, ни компьютера.Я всё ещё иду по следам программирования, но недавно я сделал важный шаг — всего за 1 месяц я собрал и выкатил свой первый продукт: FocusMind (локальный рабочий хаб с Pomodoro, задачами и заметками).Оглядываясь на эти полтора года и этот безу…

  • вторник, 28 апреля 2026 г. в 00:00:12
javascript
Как я построил кеш страниц для многодоменного проекта с помощью PVC и кастомного подхода

У меня был проект, где один Next.js сайт обслуживал несколько доменов, и возникла задача - эффективно кешировать страницы, чтобы не пересоздавать их каждый раз. Сначала я попробовал внедрить кеширование через Redis: я написал хендлер, подключил его, но вскоре обнаружил, что Redis потребляет колоссальный объём оперативной памяти - порядка 100 ГБ, и это при том, что ещё не все запросы были закешированы. Тогда я решил поискать другой подход и обратил внимание на PVC - общее хранилище, которое могл…

  • вторник, 28 апреля 2026 г. в 00:00:10
javascript
Пишем быстрые UI-автотесты без флаков, стендов и боли: изоляционный подход в CI/CD

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

  • вторник, 28 апреля 2026 г. в 00:00:09
javascript
Два пути к идеальному DatePicker: классический промптинг или системный подход по работе с AI

Привет, коллеги! Сегодня мы копнем в самую суть инженерного подхода. На повестке дня - сравнение двух кардинально разных философий создания сложного UI-компонента. Это не просто рассказ о DatePicker, это анализ стратегического выбора, который каждая команда делает каждый день: скорость в ущерб предсказуемости или наоборот?Исходный код доступен по ссылке: https://github.com/Codesrc-public-ru/ralf-datapickerЗа основу мы возьмем два реальных кейса. Первый - «AI-драфтинг», отлично описанный нашей с…

  • вторник, 28 апреля 2026 г. в 00:00:07
javascript
Баги n8n v4.4 и загрузка файлов в VK API: лечим ERR_UPLOAD_BAD_SIGNATURE и потерю метаданных

Автоматизация выгрузки отчетов в социальные сети часто превращается в каскад ошибок из-за специфики API и скрытых багов инструментов. В этой статье разберем, как загрузить Excel-отчет на сервера ВКонтакте (метод docs.save) через n8n v2.11.3, победить «тихое» затирание бинарных данных и исправить некорректную работу узла HTTP Request v4.4.Проблема: Двухэтапная загрузка и хрупкая подписьЗагрузка файлов в VK — это всегда два шага: сначала получение upload_url, затем POST-запрос с файлом. Главная с…

  • вторник, 28 апреля 2026 г. в 00:00:05