Category : javascript

javascript
Бенчмарки JavaScript — это полный хаос

Я ненавижу код бенчмаркинга, как и любой другой человек. Гораздо веселее притвориться, что твоё кэширование значения увеличило производительность на 1000%, чем проверять это тестами. Увы, бенчмаркинг JavaScript по-прежнему необходим, особенно потому, что JavaScript используется (когда не должен?) во всё более чувствительных к производительности приложениях. К сожалению, из-за множества базовых архитектурных решений языка, JavaScript никак не упрощает выполнение бенчмаркинга.Что не так с JavaScr…

  • четверг, 26 декабря 2024 г. в 00:00:09
javascript
Как отправлять SMS из NodeMCU (ESP8266)

Всем привет! У платформы МТС Exolve есть сообщество, которое часто делится полезными гайдами от прокачки серверов до создания своих приложений. Наиболее интересные и подробные продолжаем размещать в нашем хабе.В 2024 году количество подключённых IoT-устройств в мире выросло на 13% и достигло почти 19 млрд. При этом большинство решений должно иметь систему надёжного информирования в случае неожиданных сценариев. В этом гайде пользователь на простом примере рассматривает, как с помощью микроконтр…

  • среда, 25 декабря 2024 г. в 00:00:09
javascript
Заставляем работать демонстрационный пример из официальной документации npm пакета csrf-csrf

Схема CSRF-атакиНичто так не бесит при изучении новых пакетов/библиотек, как неработающие примеры из официальной документации. До последнего не веришь, что авторы библиотеки так лоханулись с исходниками примеров. Считаешь, что программисты потратили кучу своего времени на разработку, тестирование и продвижение пакета. И что они не могли выложить неработающие примеры. А если примеры не работают, то значит что-то не так у тебя. То ли VPN новый глючит, то ли антивирус душит библиотеку, то ли устар…

  • среда, 25 декабря 2024 г. в 00:00:07
javascript
Парольная защита статичной HTML-страницы на JS

Обычно парольная защита производится через веб-сервер, который проверяет пароль и выдаёт контент. Стандартный способ: .htaccess и htpasswd. Но что, если нужно выложить зашифрованную веб-страницу и файлы на публичном хостинге, где у нас нет контроля над сервером? Эту проблему решают инструменты StatiCrypt и Portable Secret. Для шифрования HTML перед публикацией StatiCrypt использует AES-256 и WebCrypto, а расшифровка происходит с помощью ввода пароля в браузере на стороне клиента, как показан…

  • вторник, 24 декабря 2024 г. в 00:00:07
javascript
JavaScript: Удобство или Угроза? Размышления о Приватности и Вебе

Интернет проник во все сферы жизни, вклад этой технологии в прогресс невозможно переоценить. Интернет-браузеры (Chrome, Firefox, Safari, Opera и т.д.) занимают топ среди инструментов "использования интернета", а сайты, которые посещают через эти браузеры — самый распространенный способ для обмена информацией.Читатель, вероятно, знаком с основными технологиями для создания сайтов: HTML, CSS и JavaScript (он же — ECMAScript). Первые две технологии — статичный текст со специальным синтакси…

  • вторник, 24 декабря 2024 г. в 00:00:07
javascript
JavaScript: структуры данных и алгоритмы. Часть 7

Привет, друзья! В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это седьмая часть серии. Сегодня мы поговорим об алгоритмах для работы со строками и поиска. Код, представленный в этой и других статьях серии, можно найти в этом репозитории. Интересно? Тогда прошу под кат. Первая часть Вторая часть Третья часть Четвертая часть Пятая часть Шестая часть ❯ Строки Прежде чем переходить к изучению конкретных алгоритмов, рекомендую хот…

  • вторник, 24 декабря 2024 г. в 00:00:05
javascript
WeakMap и WeakSet в JavaScript

Привет, Хабр!Когда дело доходит до коллекций данных в JavaScript, большинство разработчиков сразу вспоминают про массивы, объекты, Map или Set. Но есть и другие, менее известные структуры данных, которые можно назвать «инструментами для особых случаев» — это WeakMap и WeakSet. WeakMap и WeakSet — это структуры, которые созданы для работы с объектами. Их основная фичи — слабые ссылки, благодаря которым можно избежать утечек памяти. Эти структуры подчищают за собой автоматически, когда объект, ис…

  • вторник, 24 декабря 2024 г. в 00:00:03
javascript
Как Ultimatum помогает бороться со слежкой в сети

Добрый день! Меня зовут Тимур и я программист. В предыдущих статьях я рассказывал о своем форке хромиума — Ultimatum, для тех пропустил — можно начать отсюда. И если в тех статьях подход был с закосом в техническую сторону то сегодня я хочу показать как может себя чувствовать обычный пользователь браузера без программистских скилов. В первую очередь нам надо скачать и установить Ultimatum, это можно сделать у меня в бложике. Есть сборки под винду, мак и ubuntu. Под винду я использовал инсталля…

  • воскресенье, 22 декабря 2024 г. в 00:00:07
javascript
Интернационализация (i18n) бэкенда в Express с использованием Intlayer

Всем привет!Недавно мне понадобилось добавить поддержку нескольких языков в API на базе Express. Я решил поделиться кратким руководством для тех, кто хочет сделать свой бэкенд отвечающим переведенным контентом в зависимости от предпочтительного языка пользователя.Зачем интернационализировать ваш бэкенд?Вот несколько практических примеров использования интернационализации на бэкенде:Отображение ошибок бэкенда на языке пользователя: Показывайте сообщения об ошибках на родном языке пользователя, ч…

  • пятница, 20 декабря 2024 г. в 00:00:06