Современная разработка на JavaScript часто сталкивается с задачами асинхронной работы и обработки ошибок. Как правило, для этих целей используются конструкции try-catch и async-await. Однако они могут утяжелять код и усложнять его восприятие. Чтобы решить эту проблему, был предложен новый оператор безопасного присваивания ?=, который значительно упрощает обработку ошибок и улучшает читаемость кода. В этой статье мы рассмотрим, как работает этот оператор, его особенности и преимущества для разра…
В жизни бывают обстоятельства, которые требуют обязательного ежедневного выполнения одного действия — от утренней зарядки до приема лекарственных средств. Если пропустить зарядку или сделать ее дважды, это не критично. С лекарствами все сложнее: забыл выпить или выпил, но не помнишь? «Если это действительно важно, то отмечайте даты на упаковке, используйте таблетницу или заведите будильник на телефоне», — скажете вы. Да, это решение. Но у меня есть фитнес-браслет, который, как заявляется, сле…
В этой статье я расскажу об одном из стандартных API JavaScript, о котором, вы, возможно не слышали. Это AbortController. ❯ Что такое AbortController? AbortController — это глобальный класс в JS, который можно использовать для прерывания любых асинхронных операций. const controller = new AbortController() controller.signal controller.abort() После создания экземпляра контроллера мы получаем две вещи: Свойство signal — экземпляр AbortSignal. Это модульная часть, которую можно предоставить л…
Всем привет! Меня зовут Михаил Парфенов, я являюсь главным архитектором по информационной безопасности в DPA Analytics. Довольно часто встречаю утверждение о том, что настроенная Content Security Policy (CSP) – достаточное и надежное средство защиты frontend-приложений от большинства существующих угроз. Поговорим о задачах CSP и на практике проверим, защитит ли CSP от кражи данных с web-страницы js-сниффером.ОсновыContent Security Policy – механизм безопасности, позволяющий создателю web-прилож…
ВведениеДанную заметку можно рассматривать как приложение к официальной документации. С одной стороны я решил, что стоит развернуть примеры из документации, а с другой показать роль never в выражениях типов. Последнее в документации отражено между делом.Предложенная структура и содержимое заметки могут быть интересны как начинающим, так и опытным специалистам.ДокументацияВ документации never в основном описан в следующих разделах:В разделе о сужении типовВ разделе о функцияхНесмотря на то, что …
Данная статья является переводомNode.js быстро стал стандартом для создания веб-приложений и системного ПО благодаря возможности использовать JavaScript на серверной стороне. Популярные фреймворки, такие как Express, и инструменты вроде Webpack способствуют его широкому распространению. Несмотря на существование конкурентов, таких как Deno и Bun, Node остается ведущей платформой для серверной разработки на JavaScript.Мультипарадигмальная природа JavaScript позволяет использовать различные стили…
Про то, что такое бесконечная лента (Infinity Scroll, Feed) - есть много статей, постов, гайдов по реализации самого функционала, и, кажется, рассказывать про то, как именно ее реализовать и что это такое - не идея этой статьи. Так же, как и рассказывать о плюсах и минусах этого подхода. Если Вы все же не знаете, что это за чудо инженерной мысли - можно ознакомиться тут. Лично я хочу сосредоточиться на доступности такой ленты, а в конце - пример реализации на простом HTML/CSS/JS с поддержкой ал…
Привет, на связи Майя из Spectr. Сегодня я поделюсь обзором последней, пятнадцатой версии Next.js. В статье мы разберем интересные улучшения: React Compiler, улучшенные сообщения об ошибках гидрации в ‘use-client’, исправление поведения кэширования, Partial Prerendering (PPR), API next/after, обновленный дизайн create-next-app и оптимизацию бандлинга внешних пакетов.ОбщееNext.js — популярный фреймворк для создания клиентских приложений с возможностью серверного рендеринга (SSR). Он стал фаворит…
Самое главное, что никакого отношения к слову алко это не имеет. В течении нескольких лет я торговал в связке программы технического анализа AmiBroker + торговый терминал QUIK через .tri и .trr файлы в основном на фьючерсах на срочном рынке. Не могу сказать что это было неудачным опытом, но со временем я узнал про распределение активов (Asset allocation) и понял что очень сложно соревноваться с бенчмарком в виде фондового индекса. В теории это означает что можно купить индекс и забыть об этом, …