Category : javascript

javascript
Загрязненный — значит опасный: про уязвимость Prototype Pollution

Prototype Pollution (CVE-2023-45811, CVE-2023-38894, CVE-2019-10744) — не новая брешь, вы уже наверняка читали про нее и на Хабре, и на PortSwigger, и даже в научных журналах, но есть нюанс. Несмотря на большое количество публикаций, некоторые популярные решения до сих пор остаются уязвимыми для нее. Очередной пациент — библиотека на TypeScript @clickbar/dot-diver. Уязвимость CVE-2023-45827 исправлена в версии 1.0.2 и выше, поэтому мы со спокойной душой расскажем, что могло произойти с вашим п…

  • вторник, 26 декабря 2023 г. в 00:00:20
javascript
JavaScript для QA. Фронтендер учит дебажить код через Devtools

Всем привет, меня зовут Иван, я инженер по тестированию (Manual and Automation). В ремесле более 2-х лет. В этой статье мы рассмотрим методы черного, серого и белого ящиков, а так же как JavaScript может быть использован для перехода от метода черного ящика к серому и белому.Со мной сегодня senior фронтенд-разработчик, Алексей - специалист с большим опытом, он научит вас дебажить код в Devtools и ставить точку останова. Даст советы для QA как стать самостоятельнее и определять ошибки в коде с …

  • воскресенье, 24 декабря 2023 г. в 00:00:16
javascript
Возможности JS, о которых вы возможно не знали

Сгенерированно с помощью AI Kandinsky 3.0Всем привет! Меня зовут Леша, я фронтенд-разработчик. Крашу кнопочки, пишу js скрипты, веду канал в TG https://t.me/frontend_tales (подписывайтесь, стараюсь выкладывать полезный материал). В этой статье хотел бы поделиться с вами лайфхаками JavaScript, которые, возможно, помогут вам понять тонкости языка и улучшить ваш код. В общем, статья рассчитана на джуниоров и мидлов, сеньорам возможно будет скучно, но рады всем. Начнем! 1. Разделитель числаВ чис…

  • воскресенье, 24 декабря 2023 г. в 00:00:15
javascript
Кастомизация бессерверных функций без применения промежуточного ПО

Когда пишешь код для серверного API, часто требуется проделывать схожие шаги: аутентифицировать пользователей, уточнять их роли и выставленные флаги функций, т.д. В большинстве фреймворков для бэкенда безупречно организовано взаимодействие с обработчиками запросов. Часто такой софт называют «промежуточное ПО» (middleware), поскольку он находится между кодом приложений и кодом системы. В этой статье я аргументирую, почему стоит обходиться как можно меньшим объёмом промежуточного ПО, и рассказыв…

  • суббота, 23 декабря 2023 г. в 00:00:16
javascript
Микрофронтенд для самых маленьких

Всем привет. Меня зовут Алексей. Сейчас я работаю frontend-разработчиком в компании Ozon. В свободное время мне нравится читать про новые технологии, фреймворки, а учитывая то, с какой скоростью развивается frontend, я никогда не скучаю. В этой статье пойдет речь о микрофронтах. В частности, мы посмотрим, как их реализовать на самом базовом уровне, разберёмся, когда они нужны, а когда даже не стоит смотреть в их сторону. Микрофронты нам известны еще со времен фреймов, целью которых было встави…

  • суббота, 23 декабря 2023 г. в 00:00:16
javascript
Mobile Web, навигация и при чем тут Nginx

Привет, Habr! Я frontend-разработчик в Альфа-Банк. В статье я хотел бы поделиться опытом внедрения мобильной версии web приложения «Альфа-Бизнес» в нашу архитектуру. А точнее — как без массовых доработок 100 фронтовых сервисов мы заставили работать mobile web версию с новой навигацией.Примечание. «Альба-Бизнес» — веб приложение для юридических лиц.Почему отдельная версия?В связи с блокировкой приложений банка в AppStore и GooglePlay было принято решение разработать мобильное PWA (Progressive W…

  • суббота, 23 декабря 2023 г. в 00:00:15
javascript
Я счастлив, что больше не веб-разработчик

Я написал своё первое одностраничное веб-приложение на Javascript в 2005 году, сразу после того, как узнал о XMLHttpRequest и до появления серьёзных фреймворков. Я оставил профессиональную веб-разработку примерно в 2009 году (а начал её в 1997 году с WebObjects), а последний десяток лет своей карьеры занимался мобильными.Сегодня я смотрю на мир веб-разработки, и меня поражает его безумие. Существует так много фреймворков для веба, и каждый день появляются новые. Для создания веб-приложения (в …

  • суббота, 23 декабря 2023 г. в 00:00:14
javascript
Сложность алгоритмов. Разбор Big O

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

  • суббота, 23 декабря 2023 г. в 00:00:13
javascript
Pixel Combats Api

Это статья написана для тех кто уже умеет публиковать свой режим в игре, и хочет разобраться в аспектах моддинга и программирования. Итак, начнем.1. Создание команд и структура кодаДля начала научимся создавать свои команды, чтобы можно было в них зайти. Весь код мы будем писать в конструкции try - cacth. Чтобы при ошибке в коде: не синтаксической, нам вывели ошибку, и мы ее быстро исправили. Для того чтобы создать команду, мы должны обратиться к классу Teams и его методу Add. В параметры мето…

  • пятница, 22 декабря 2023 г. в 00:00:21