Статьи с тегом «JavaScript»
FrontendHTMLJavaScript
Атрибуты и свойства HTML-элементов часто путают, но их различие напрямую влияет на работу с формами и динамическим контентом. Разбираемся, почему input.value и getAttribute('value') возвращают разные значения и как писать надёжный код.
JavaScript
URL Pattern API — это как регулярные выражения для адресной строки, только проще. Разбираем синтаксис, три главных метода и сценарии использования: от умного кэширования в Service Worker до роутинга на сервере.
JavaScript
Слушатели событий необходимы для интерактивности в JavaScript, но они могут незаметно вызывать утечки памяти, если их не удалить надлежащим образом. А что, если слушателю событий нужны параметры? Вот тут-то и начинается самое интересное. Рассмотрим, какие функции JavaScript делают обработку параметров с помощью обработчиков событий возможной и хорошо поддерживаемой.
JavaScript
Чем отличается итерируемый объект от итератора? Как работают Symbol.iterator, next(), for...of? Создание своих итераторов и ленивые вычисления. С примерами кода и ссылками на смежные статьи.
JavaScript
Переходим от теории к практике. Разберём реальный кейс: как разработчик Крис Фердинанди добавил проверку типов в свой UI-кит Kelp, используя JSDoc и TypeScript Compiler, но без единого .ts файла. Рассмотрим пошаговую настройку окружения, основные приёмы типизации переменных, функций и DOM-элементов, создание собственных типов с @typedef, а также следующие шаги — от автоматической проверки в CI до генерации .d.ts файлов. Все примеры адаптированы для самостоятельного повторения.
CSSFrontendJavaScript
В декабре 2025 года в CSS произошло событие, которое сложно переоценить: последний из основных браузеров — Firefox 146 — добавил поддержку правила @scope. Это означает, что технология получила статус Baseline Newly Available и готова к промышленному использованию во всех современных браузерах без исключений.
a11yCSSFrontendHTMLJavaScript
Путаница в терминах и непонимание разницы между модальным и обычным диалогом — частая причина плохого UX и проблем с доступностью. Разбираемся в типах компонентов, даём готовые критерии выбора и чек-лист для внедрения.
JavaScriptTypeScript
Используете JSDoc для типизации JavaScript? Узнайте, как настроить TypeScript Compiler для профессиональной проверки типов, генерации деклараций и интеграции в процесс разработки.
JavaScript
Symbol.iterator — это не просто «ещё один символ» в JavaScript. Это ключ, который позволяет вам сказать языку, как именно ваш объект должен вести себя в таких фундаментальных операциях, как цикл for...of или синтаксис spread (...). На практике это даёт удивительную возможность: создавать объекты, которые могут быть одновременно и структурированными хранилищами данных с именованными свойствами, и коллекциями, готовыми к «разворачиванию» в аргументы функции. В статье мы разберём, как с помощью Symbol.iterator решить классическую дилемму «объект или массив» на конкретном примере из реальной задачи.
JavaScriptNodeJS
Полное руководство по хелперам итераторов в JavaScript: как ленивые вычисления заменяют цепочки .map().filter() и экономят память. Примеры, сравнение с массивами, подводные камни.
JavaScriptNodeJS
Запускаете три независимых API-запроса в цикле, а они выполняются друг за другом, заставляя пользователя ждать втрое дольше. Или получаете массив [Promise, Promise, Promise] вместо ожидаемых данных. Всё дело в том, как вы используете await, map и forEach.
JavaScriptReact
В 2026 году React продолжает эволюционировать. Узнайте, как перейти от злоупотребления useEffect к современным паттернам хуков, которые делают код чище, уменьшают ошибки и готовят ваше приложение к будущему.
GulpJavaScriptNodeJS
Сила современного Gulp — не в сборке фронтенда, а в автоматизации через потоки файлов. В основе — объект Vinyl и движок vinyl-fs. Эта статья — разбор этих технологий, сценарии применения и замена устаревшего passthrough на актуальные паттерны.
JavaScript
Распространённые ошибки и неверные подходы среди неопытных фронтенд и бэкенд-разработчиков, которые могут привести к появлению багов или проблемам с отказоустойчивостью.
JavaScript
25 июня 2025 года 129-я Генеральная ассамблея Ecma утвердила спецификацию языка ECMAScript 2025, а это значит, что теперь он официально стал стандартом.
JavaScript
Разберитесь в рекурсии на примерах и узнайте, как использовать рекурсивные функции в JavaScript.
JavaScript
Во второй части серии Mat Marquis объясняет, что такое this на самом деле, и помогает разобраться, чему он соответствует, исходя из различных контекстов.
JavaScript
Почему instanceof возвращает false для настоящих ошибок из других рилмов, а системы логирования теряют stack trace'ы? Переходим на Error.isError() — надёжный способ проверки ошибок в JavaScript, который работает везде: в iframe, воркерах и браузерных расширениях.
JavaScriptReact
Это не особенно очевидно, но дочерний useEffect будет выполняться раньше родительского. Давайте разберёмся, почему.
JavaScript
Руководство по преобразованию значений в строки в JavaScript: сравнение 5 методов, работа с объектами и JSON.stringify(), практические примеры и лучшие практики.
JavaScript
Ключевое слово this в JavaScript ставит в тупик всех разработчиков — от джунов до сеньоров. В первой из двух частей углубимся в основы, необходимые для лучшего понимания this и того, как он работает.
JavaScript
Оператор нулевого слияния (??) предоставляет простой способ обработки null или undefined значений в JavaScript. Он просто необходим, и я расскажу, почему.
a11yCSSFrontendJavaScript
Демонстрация того, как современная веб-платформа может упростить уменьшение движения на старой кодовой базе.
JavaScript
Улучшите сортировку строк с учётом локали, заменив повторяющиеся вызовы String.localeCompare одним экземпляром Intl.Collator для более быстрого и эффективного сравнения.
JavaScript
Хватит писать код форматирования временных интервалов вручную. Используйте новый мощный API Intl.DateTimeFormat для отображения локализированного времени.
FrontendHTMLJavaScript
Демонстрация того, как современная Web-платформа может радикально упростить и обогатить старую кодовую базу.
FrontendJavaScript
Копирование и вставка текста, изображений и файлов с помощью нового API navigator.clipboard
FrontendJavaScript
Откройте для себя возможности управления приоритетами и контроля выполнения задач в JavaScript с помощью нового Scheduler API. Новый подход поможет вам стать более продуктивными и эффективными в своей работе.
JavaScript
Глубокое погружение в JavaScript Символы — что это такое, чем они важны и как их эффективно использовать
FrontendHTMLJavaScript
rel='modulepreload' указывает, что скрипт модуля должен быть получен, проанализирован и откомпилирован заранее, и сохранён для последующего выполнения.
JavaScript
Практическое руководство по операторам левого и правого битового сдвига JavaScript
ES2025JavaScript
Прекратите смешивать try/catch с цепочками промисов — новый Promise.try в JavaScript обрабатывает возвращаемые значения, промисы и ошибки унифицировано
ES2025JavaScript
Понимание нового синтаксиса атрибутов импорта и причин, по которым нельзя полагаться только на расширения файлов.
FrontendJavaScript
Практическое руководство по Performance API: измеряем Core Web Vitals и ускоряем загрузку сайта.
FrontendJavaScript
Вместо того чтобы добавлять document.startViewTransition в различные места JS, используйте MutationObserver, следящий за мутациями DOM. В обратном вызове Observer'а отмените исходную мутацию и примените её снова, но на этот раз обернув во View Transition.
FrontendJavaScript
В руководстве рассматриваются такие шаблоны работы с DOM на JavaScript, как выбор правильного querySelector, кэширование элементов и улучшение обработки событий.
a11yCSSFrontendHTMLJavaScript
За последние несколько лет интерфейсы с темным режимом сильно изменились. Все мы знаем традиционный
подход с использованием медиа-запросов, но в этой статье Sara Joy демонстрирует современные CSS-функции, благодаря которым соблюсти предпочтения пользователя в выборе цветовой схемы становится чертовски просто.
FrontendJavaScript
Делегирование событий — техника в веб-разработке, используемая для более эффективного управления событиями. Вместо того чтобы добавлять слушателей событий к каждому элементу, можно прикрепить один слушатель к родительскому элементу, повысив эффективность. Этот родительский элемент затем обрабатывает события для всех дочерних элементов и становится более эффективным, как продемонстрировано в статье.
a11yCSSFrontendHTMLJavaScript
Давайте уделим немного времени рассмотрению Dialog API, Popover API и остальных. Рассмотрим, когда лучше использовать каждый из них в зависимости от требований. Модальные или немодальные? JavaScript или чистый HTML/CSS? Не уверены? Не волнуйтесь, мы разберёмся во всём этом.
JavaScript
В JavaScript наследование является важным способом повторного использования кода и управления сложными объектными отношениями. Благодаря модели, основанной на прототипах, в JavaScript существует несколько шаблонов наследования, обладающих уникальными преимуществами. Давайте рассмотрим эти техники и поймём, когда какая из них наиболее эффективна.
JavaScript
JavaScript, незаменимый компонент современной веб-разработки, отличается универсальностью и мощью. Однако даже у такого популярного инструмента есть свои сложности. Давайте разберёмся в дополнительных, часто упускаемых из виду аспектах, делающих JavaScript менее идеальным в определённых ситуациях.
JavaScriptReact
В React хук useState позволяет добавлять состояние в функциональные компоненты. useState возвращает массив с двумя значениями: текущее состояние и функцию для его обновления.
JavaScript
Разбираем ключевые отличия стрелочных и обычных функций в JavaScript: синтаксис, this, arguments. Узнайте, когда использовать каждый тип для чистого и эффективного кода. Примеры и сравнения.
JavaScript
В JavaScript для представления двоичных данных используются объекты File и Blob, но они служат для разных целей и имеют ряд различий.
JavaScript
В статье я расскажу об оптимизации использования деструктурирующего присваивания для повышения производительности. Рассмотрим различия в байткоде между двумя подходами к деструктурирующему присваиванию. Я проведу тест, подчёркивающий эти различия, и в конце вы поймёте, почему ArrayAssignmentPattern не всегда является лучшим выбором.
JavaScript
Если вы проводите много времени, пробираясь через современный JavaScript, то, скорее всего, встречали столько многоточий (...), что даже самый задумчивый герой ролевых игр 90-х был бы посрамлён. Я не буду винить вас за то, что вы находите их немного запутанными. Конечно, я не виню вас за то, что находите что-то в JavaScript запутанным, но я всегда считал эти многоточия уникально не интуитивными с первого взгляда. Не помогает и то, что часто сталкиваетесь с этими маленькими чудаками в контексте деструктурирующего присваивания
, которое само по себе является странным синтаксисом.
JavaScript
Сегодня я хотел бы поговорить об одном из стандартных JavaScript API, который вы, скорее всего, проспали. Он называется AbortController.
a11yJavaScriptReact
Мы считаем, что следует чаще использовать хук useId(). Если вы обнаружили, что не используете его, есть большая вероятность, что ваше приложение или сайт либо недоступны (a11y), либо вы создаёте код, склонный к ошибкам. Позвольте объяснить.
JavaScript
Удаление дубликатов — распространённая проблема в программировании, возникающая в различных контекстах, например, при очистке данных или обеспечении уникальности записей. Этот вопрос могут задать на собеседовании, поскольку он довольно прост и может подготовить собеседника к более сложным вопросам.
JavaScript
Разработчик JavaScript, пишущий чистый, эффективный и лаконичный код может значительно сократить время разработки. Понимание ряда удобных сокращений JavaScript может сделать код более читаемым и помочь избежать повторяющихся шаблонов. В статье мы рассмотрим 10 мощных сокращений JavaScript, способных сэкономить часы работы над кодом и повысить производительность.
JavaScript
Разница между export default xxx и export { xxx as default } в JavaScript может показаться малозаметной, но может повлиять на поведение кода.
JavaScript
Модули JavaScript — способ организации кода в многократно используемые компоненты, используемые совместно в разных файлах и проектах. Модули можно импортировать и экспортировать с помощью двух различных методов: экспорта по умолчанию и именованного экспорта. Рассмотрим экспорт по умолчанию и причины, по которым следует избегать его использования в модулях JavaScript.
JavaScriptReactTypeScript
Узнайте о новейшем и одновременно старейшем стандарте React для доступа к данным формы, а также о том, как использовать его с TypeScript.
JavaScriptReactVite
Надоело ждать Webpack по 10 секунд? Vite запускает сервер за 200 мс, а HMR работает мгновенно. В этом гайде: настройка с нуля, работа с картинками и CSS, секреты переменных окружения (.env) и разбор 3 самых частых ошибок. Переходите и пишите код, а не ждите!
JavaScriptReact
React стала одной из популярных библиотек для создания UI, а с появлением хуков в React 16.8 в распоряжении разработчиков появилось ещё больше мощных инструментов. Один из таких хуков — useEffect, позволяющий выполнять побочные эффекты в компонентах функций. Рассмотрим хук useEffect, его использование и лучшие практики.
JavaScript
AggregateError помогает обрабатывать сразу несколько ошибок в JavaScript. Это упрощает управление кодом и делает его более надежным.
JavaScriptTypeScript
В каждом языке программирования есть циклы. Циклы выполняют операцию (т. е. часть работы) несколько раз, обычно по одному разу для каждого элемента массива или списка, или просто повторяют операцию до тех пор, пока не будет выполнено определённое условие.
CSSFrontendHTMLJavaScript
Диалоговые окна — неотъемлемая часть любого пользовательского интерфейса, будь то веб-интерфейс, мобильный или любой другой, существующий на сегодня.
JavaScriptReact
React продолжает развиваться, предлагая разработчикам мощные инструменты для создания динамичных и эффективных веб-приложений. В предстоящем релизе React 19 появится несколько революционных возможностей, способных перевернуть представление о том, как разрабатывать с React. В этой статье рассмотрим эти новые возможности, подчеркнём их преимущества и то, как они решают существующие проблемы, а также приведём примеры, иллюстрирующие каждую концепцию.
JavaScriptReact
React, популярная JavaScript-библиотека для создания пользовательских интерфейсов, собирается сделать гигантский прыжок вперёд в своей грядущей версии 19. В преддверии выхода React 19 разработчики по всему миру с нетерпением ждут новых возможностей и улучшений, обещающих произвести революцию в создании веб-приложений.
CSSFrontendHTMLJavaScript
В последнее время браузеры стремительно обретают довольно важные возможности. Возможности, для реализации которых могло потребоваться несколько библиотек JavaScript (или CSS), теперь доступны в браузерах из коробки
.
FrontendJavaScript
Alpine.js — легковесный JavaScript фреймворк. Позволяющий создавать интерактивные пользовательские интерфейсы без написания большого количества JavaScript-кода.
FrontendJavaScript
Иногда важно знать, поддерживается ли функция браузером или нет, чтобы можно было что-нибудь предпринять. Возможно, загрузить полифилл или просто выбрать другой подход. В статье рассматриваются новые возможности браузеров и тесты их поддержки браузером.
JavaScript
Представьте, что находитесь на шумной вечеринке, и каждый носит на спине определённое число. Ведущий объявляет игру — найдите двух человек, чьи номера складываются в магическое число, и получите приз!
JavaScript
Метод Promise.withResolvers() повышает гибкость, позволяя удалённо разрешать или отклонять промисы, упрощая и оптимизируя асинхронный код.
JavaScript
В веб-разработке управление асинхронными задачами имеет решающее значение для создания отзывчивых и эффективных приложений. Асинхронные операции, такие как получение данных с сервера или выполнение трудоёмких вычислений, часто требуют возможности отменить или прервать их до завершения. Здесь на помощь приходит AbortController, о котором и пойдёт речь.
JavaScriptNodeJSTypeScript
Мы пишем код, который что-то открывает: файл, поток, блокировку, соединение с базой. А ещё мы должны это закрыть. Язык наконец берёт это на себя.
CSSFrontendHTMLJavaScript
Якорные ссылки — простой способ создать навигацию по странице. Например, в оглавлении можно использовать якорные ссылки для перехода к различным разделам страницы.
JavaScript
Когда я консультирую клиентов по работе с API, то рекомендую никогда не обращаться к API напрямую.
FrontendJavaScript
Document.parseHTMLUnsafe — это новый улучшенный .parseFromString
JavaScript
getHTML, setHTML, setHTMLUnsafe, декларативный shadow DOM и очистка.
JavaScript
Вчера мы рассмотрели ванильные JS Proxy. Сегодня хочу показать, как можно их использовать для создания реактивных сигналов.
JavaScript
Сегодня рассмотрим JavaScript Proxy: что это такое, как они работают и для чего они могут понадобиться.
FrontendJavaScript
В предыдущей статье я писал о методе handleEvent() для работы со слушателями событий в веб-компонентах. Сегодня поговорим о том, как использовать его для обработки нескольких типов событий.
FrontendHTMLJavaScript
Одна из проблем при выполнении кода в constructor() заключается в том, что иногда элемент создаётся, но вложенный в него HTML ещё не готов.
FrontendJavaScript
Часто приходится анализировать множество URL-адресов. Частично для их проверки, а также для нормализации или извлечения определённых частей из URL. API URL в браузерах позволяет это делать, но его эргономика не идеальна.
FrontendJavaScript
Вчера мы узнали, как связать дочерний и родительский веб-компонент. Сегодня рассмотрим, как использовать пользовательские события Custom Event.
FrontendJavaScript
Меня спрашивали, как вложить веб-компоненты друг в друга и передавать информацию от одного к другому. Сегодня мы рассмотрим, как это реализовать.
FrontendJavaScript
Сегодня мы рассмотрим, как обнаружить и реагировать на изменение атрибутов веб-компонента.
FrontendJavaScript
Вчера мы изучили различные способы инстанцирования веб-компонента. В статье был упомянут метод жизненного цикла connectedCallback(). Сегодня поговорим об остальных методах жизненного цикла веб-компонентов.
FrontendJavaScript
Сегодня мы познакомимся с различными способами инстанцирования веб-компонентов (и проблемами, связанными с каждым из этих способов).
CSSFrontendHTMLJavaScript
Сегодня рассмотрим одну из моих любимых фич веб-компонентов: прогрессивное улучшение.
FrontendHTMLJavaScript
Вчера мы рассмотрели, как создать собственный веб-компонент. Сегодня мы изучим, как добавлять опции и настройки.
FrontendHTMLJavaScript
Давайте рассмотрим, как создать свой первый веб-компонент.
CSSFrontendJavaScript
Одно из преимуществ CSS переменных — хранение таких значений, как цвета, размеры и другие элементы дизайна, в одном месте, с последующим использованием их во всей таблице стилей. Мы расскажем о значении CSS переменных и о том, как упростить поддержку и обновление стилей, что позволит повысить навыки фронтенд-разработки.
JavaScript
Рассмотрим самые интересные и ожидаемые функций JavaScript, появление которых запланировано на 2024 год.
JavaScript
Узнайте, как отключить сообщения "packages are looking for funding" в проекте или глобально.
FrontendHTMLJavaScript
Сегодня я решил, что мы создадим HTML веб-компонент с нуля. Давайте создадим компонент, показывающий и скрывающий текст при переключении кнопки.
FrontendJavaScript
JavaScript CustomEvent расширяют функциональность встроенной системы событий. Проще говоря, они позволяют программистам создавать и обрабатывать события, уникальные для их приложения, и в этой статье мы расскажем о них всё.
JavaScriptTypeScript
В этой статье приводится глубокое сравнение и противопоставление TypeScript и его предшественника, стандартизированного ECMA, JavaScript.
JavaScript
В этой статье мы рассмотрим фундаментальные концепции функционального программирования на JavaScript и то, как применять их для написания чистого, лаконичного и сопровождаемого кода.
JavaScript
Функции высшего порядка — одна из самых мощных возможностей JavaScript, позволяющая разработчикам писать лаконичный, гибкий и модульный код. Функция высшего порядка — это просто функция, которая либо принимает одну или несколько функций в качестве аргументов, либо возвращает функцию в качестве результата. В этой статье мы рассмотрим, что такое функции высшего порядка, почему они полезны и как использовать их в своём коде.
JavaScript
В этой статье вы узнаете о концепции Тройного C в JavaScript, включающей в себя Currying, Closures и Callbacks.
JavaScript
В этой статье мы рассмотрим объектно-ориентированное программирование в JavaScript: Узнайте, как использовать классы, наследование и инкапсуляцию для получения более чистого и эффективного кода в ваших веб-проектах.
JavaScript
Многие проблемы, связанные с именованием, возникают из-за попыток умничать или создания вещей, которые пытаются сделать слишком много.
JavaScript
Изучите работу движка JavaScript, от разбора кода до оптимизации его производительности, а также такие ключевые техники, как скрытые классы и управление памятью.
JavaScript
Узнайте, как использовать Fetch API - более простую и удобную альтернативу XMLHttpRequest, основанную на промисах, — с помощью Node.js, Deno и Bun.
JavaScript
Нюансы среды выполнения JavaScript и почему каждый опытный специалист должен быть хорошо знаком с ними.
JavaScript
JavaScript — универсальный язык программирования, позволяющий разработчикам создавать динамичные и интерактивные веб-приложения. Хотя основная функциональность языка заключается в манипулировании веб-контентом с помощью объектной модели документа (DOM), JavaScript также предоставляет объектную модель браузера (BOM) для взаимодействия со средой браузера.
JavaScriptTypeScript
Хотите типизацию TypeScript без компиляции? JSDoc позволяет добавлять статическую проверку типов в обычный JavaScript. Узнайте, как использовать JSDoc-аннотации для улучшения кода, ускорения разработки и сокращения ошибок без перехода на TypeScript.
JavaScriptNodeJS
Веб-приложениям не всегда нужна запись в файловую систему, но Node.js предоставляет для этого обширный интерфейс прикладного программирования (API). Это может понадобиться, если вы ведёте логи отладки, передаёте файлы на сервер или с сервера, или создаёте инструменты командной строки.
JavaScript
В ECMAScript 2023 появились новые функции, призванные улучшить язык и сделать его более мощным и удобным. Новая версия включает в себя интересные функции и новые методы массивов JavaScript, благодаря которым программирование на JavaScript становится более лёгким и приятным. В этой статье мы подробно рассмотрим функциональные возможности новых методов JavaScript на прототипах массивов.
JavaScript
Цепочка прототипов — это механизм в JavaScript, позволяющий объектам наследовать свойства и методы других объектов, имея общий прототип. В JavaScript каждый объект имеет связанный с ним прототип объекта, и эти прототипы образуют цепочку. Когда свойство или метод не найдены в объекте, JavaScript просматривает цепочку прототипов, чтобы найти его в прототипе объекта или в прототипах его предков.
JavaScript
В этой статье я рассмотрю регулярные выражения, также известные как Regex, и попытаюсь убедить вас в том, что их наличие в вашей кодовой базе — плохая идея. Для краткости я не буду пытаться объяснить внутреннюю работу и применение Regex, но постараюсь убедить вас в необходимости их рефакторинга из вашей кодовой базы.
JavaScript
В программировании, особенно в динамичном и постоянно развивающемся мире JavaScript, путь от новичка до опытного профессионала сопряжён с множеством трудностей и кривых обучения. Один из важнейших выводов, который я вынес из своего богатого опыта, как в качестве интервьюера, так и в качестве интервьюируемого, заключается в огромной важности понимания "почему", стоящего за нашими кодовыми решениями. Именно такое глубокое понимание и способность чётко сформулировать причины каждого решения действительно отличают исключительных специалистов.
JavaScript
Приёмы, которые вы, вероятно, не знали о методе reduce()
JavaScriptNodeJS
Вы когда-нибудь сталкивались с проблемой управления различными конфигурациями в Node.js приложениях? Хотелось бы иметь централизованный и организованный способ работы с такими секретами, как ключи API и учётные данные баз данных? Не ищите дальше! На помощь приходят переменные среды. В этой статье мы погрузимся в мир переменных среды в Node.js, рассмотрим их преимущества, примеры использования и лучшие практики эффективного управления ими.
JavaScript
Удаление свойств объекта в JavaScript — не самая интересная задача, но существует множество способов её решения, каждый из которых раскрывает фундаментальный аспект работы JavaScript. В этой статье Juan Diego Rodríguez рассматривает каждый из способов.
JavaScript
Давайте будем честными: как часто мы сталкиваемся с кодом, использующим генераторы?
JavaScript
Когда нам необходимо проверить, содержит ли объект JavaScript определённое свойство, мы можем использовать несколько методов, включая операторы JavaScript, специфические статические методы класса Object, методы экземпляра объекта, методы экземпляра массива и пользовательскую функцию JavaScript.
JavaScript
Кодирование и декодирование base64 — это распространённая форма преобразования двоичного содержимого для представления его в виде безопасного для веб-приложений текста. Она широко используется для URL данных, таких как встроенные изображения.
JavaScript
Регулярные выражения могут быть пугающими, но это не так! Узнайте все необходимое о регулярных выражениях и их использовании в JavaScript.
JavaScript
Утечки памяти можно сравнить с утечками воды в доме: хотя небольшие капли поначалу не кажутся большой проблемой, со временем они могут нанести значительный ущерб.
JavaScript
Кодировка символов — важнейший аспект разработки JavaScript как на фронтенде, так и на бэкенде. В этой статье мы рассмотрим основы кодирования символов, его важность и то, как оно влияет на отображение данных на веб-страницах. Также обсудим лучшие практики и типичные ошибки, которые помогут вам избежать проблем с кодировкой в своих проектах.
JavaScript
Когда мы вступаем на путь кодирования на JavaScript, мы сталкиваемся с множеством концепций, и одной из таких интересных концепций является Композиция Функций.
JavaScript
Новый View Transitions API предлагает более простой способ анимации между двумя состояниями DOM — даже между загрузками страницы. Это прогрессивное усовершенствование, работающее уже сегодня.
BackendFrontendJavaScriptPHP
Насладитесь быстрым процессом создания зависимостей front-end в ваших PHP-проектах благодаря возможностям управления пакетами Bun.
JavaScript
С появлением ES6 итераторы и генераторы были официально добавлены в JavaScript.
JavaScript
Современные веб-пользователи ожидают от одностраничных приложений (SPA) плавных и динамичных эффектов. Однако для создания SPA часто используются сложные фреймворки, такие, как React и Angular, которые могут быть сложны для изучения и работы с ними. Появилась htmx — библиотека, позволяющая по-новому взглянуть на создание динамических веб-приложений, используя такие возможности, как Ajax и CSS-переходы, непосредственно в HTML.
JavaScript
В этой статье мы рассмотрим практические методы оптимизации JavaScript-файлов, способы решения проблем производительности, связанных с JavaScript-файлами, а также инструменты, помогающие в процессе оптимизации. Вы получите знания, позволяющие повысить скорость работы веб-приложений и обеспечить бесперебойную работу пользователей.
CSSFrontendHTMLJavaScript
В Интернете пагинация — это способ разбиения больших фрагментов содержимого на более мелкие части. В этой статье мы рассмотрим простой способ разделения содержимого на ряд "страниц" с помощью HTML, CSS и обычного JavaScript.
JavaScript
Ознакомьтесь с конкретными ситуациями, в которых регулярные выражения оказываются оптимальным решение проблемы.
JavaScript
Ленивая загрузка — это метод, позволяющий отложить загрузку несущественного содержимого до того момента, когда оно станет необходимым для просмотра пользователем. В отличие от других методов загрузки, при которых все объекты сайта загружаются одновременно при доступе к странице, при ленивой загрузке используется более расчётливый подход. Она откладывает отображение некоторых элементов, таких как изображения, видео и другие мультимедиа, до тех пор, пока пользователь не начнёт активно взаимодействовать с веб-страницей. В этой статье мы расскажем вам, как использовать эту технологию, чтобы пользователи получали больше удовольствия от работы с вашим сайтом.
JavaScript
Четыре новых метода Array.prototype были недавно утверждены в рамках ECMAScript 2023. О том, как их использовать, читайте в этом подробном руководстве.
JavaScript
Ещё в 2015 году была представлена революционная версия ES6 с множеством функций, широко используемых в современной веб-разработке.
JavaScript
В этой статье перечислены 10 лучших соглашений об именовании JavaScript, которые должен знать каждый разработчик JavaScript, чтобы писать код, понятный остальным разработчикам.
JavaScript
Сравнение объектов в JavaScript не так просто, как сравнение примитивных типов данных. В статье рассматриваются пять способов глубокого сравнения объектов в JS.
JavaScriptNodeJS
Рассмотрим, как работать с модулями в Node.js, уделяя особое внимание их экспорту и использованию, а также объясняя разницу между module.exports и exports.
JavaScript
Сегодня мы поговорим о том, как управлять слушателями событий, когда у вас есть несколько сценариев, которые слушают одно и то же событие.
JavaScript
В этой статье мы рассмотрим готовящееся предложение Record / Tuple. Как их создавать, зачем их использовать и чем они отличаются от обычных объектов и массивов?
JavaScriptNodeJS
Вы знаете в чём разница между exports и module.exports в Node.js?
JavaScript
Вчера мы рассмотрели, как определить, когда элемент входит или выходит из области просмотра. Сегодня мы познакомимся с некоторыми подробностями, которые можно получить об этих элементах из объекта IntersectionObserverEntry.
JavaScript
API Intersection Observer можно использовать для наблюдения за элементом и запуска функции обратного вызова, когда он входит или выходит из области просмотра (или из другого элемента).
JavaScript
Во второй части цикла Кирилл рассматривает полезность примитивных объектов, изучая, как уменьшение их возможностей может быть полезно для вашего проекта.
JavaScript
Наследование в объектно-ориентированном программировании (ООП) JavaScript — фундаментальная концепция, которая развивалась с течением времени, и в этой статье мы покажем, как она работает и как её использовать.
JavaScript
В первой части серии Кирилл Мышкин рассказывает о некоторых аспектах JavaScript, помогающих приблизить объекты к примитивным значениям, что позволяет воспользоваться общими возможностями языка, которые обычно не ассоциируются с объектом, такими как сравнение и арифметические операторы.
JavaScript
Один из моих любимых трюков
ванильного JS заключается в том, что можно передать несколько селекторов в такие методы селектора JavaScript, как Element.querySelector(), Element.querySelectorAll(), Element.closest() и Element.matches().
JavaScript
Сегодня я хотел бы поговорить о том, как обрабатывать вложенные элементы с делегированием событий.
JavaScript
Освойте оператор switch: более организованную и лаконичную альтернативу использования нескольких операторов if-else
JavaScriptTypeScript
Цель этой статьи — провести всестороннее сравнение TypeScript и JavaScript, чтобы помочь веб-разработчикам принять обоснованное решение о том, какой язык использовать для проектов.
JavaScript
Несмотря на то, что тысячи статей об async/await и Promise уже существуют, многие из них оставляют желать лучшего. Поэтому хочу написать свою статью на эту тему.
JavaScript
Объект Date в JavaScript представляет момент времени. Хотя у него есть полезные функции, работать с ним сложно. Мы рассмотрим, как создать новый объект Date и, надеюсь, сделать его немного проще в использовании.
JavaScript
Рассмотрим что такое API и зачем он нужен на примере небольшого магазина. По шагам напишем сценарий получающий данные из реального API и обрабатывающий их.
JavaScriptTypeScript
Они не всегда являются проблемой. Но ими злоупотребляют, и их часто можно заменить лучшими альтернативами. Вот почему я избегаю их и что я делаю вместо этого...
JavaScript
В этом руководстве мы погрузимся в обработку ошибок JavaScript, чтобы вы могли выбрасывать исключения, обнаруживать и обрабатывать собственные ошибки.
JavaScript
Разберёмся как создавать промисы и работать с ними в JavaScript. Рассмотрим цепочки промисов, обработку ошибок и некоторые из новых методов промисов, добавленных в язык.
JavaScript
Многие языки программирования имеют функцию sleep, которая задерживает выполнение программы на заданное количество секунд. Однако эта функциональность отсутствует в JavaScript из-за его асинхронной природы. В этой статье мы рассмотрим почему это произошло, а затем как реализовать функцию sleep самостоятельно.
JavaScript
В этой статье мы подробно рассмотрим, как работать с асинхронным кодом в JavaScript. Мы начнём с обратных вызовов, перейдём к промисам и закончим более современными async/await. В каждом разделе будет предложен пример кода, изложены основные моменты, о которых следует знать.
JavaScript
Как выглядит Fetch API, какие проблемы решает, и какой способ получения удалённых данных с помощью функции fetch() внутри веб-страницы наиболее практичен.
JavaScript
В JavaScript есть два способа создания функции: функциональное выражение и объявление функции. Мы обсудим когда использовать функциональное выражение, а когда объявление и объясним различия между ними.
JavaScript
Ключевые слова async и await представляют современный синтаксис JavaScript, помогающий обрабатывать асинхронный операции. В этом руководстве мы подробно рассмотрим, как использовать async/await для управления потоком данных.
JavaScript
Ад обратного вызова реален. Разработчики часто рассматривают обратные вызовы как чистое зло, вплоть до того, что избегают их. Гибкость JavaScript совсем не помогает в этом. Но не обязательно избегать обратных вызовов. Хорошая новость в том, что есть простые шаги спасения от ада обратных вызовов.
JavaScript
Когда вы начинаете изучать JavaScript, вскоре услышите термин функции обратного вызова
. Обратные вызовы — неотъемлемая часть модели выполнения JavaScript, и важно понимать, что они из себя представляют и как работают.
JavaScript
Объекты и массивы — фундамент JavaScript, но для динамических коллекций и уникальных значений существуют более подходящие инструменты: Map, Set, WeakMap и WeakSet. Разбираемся, когда и зачем их использовать.
JavaScript
Создание и манипулирование URL-адресами в виде строк может казаться безопасным, пока не сложатся общие ошибки. Но у современного JavaScript есть решение для этого, Конструктор URL, делает чтение, запись и изменение URL-адресов более безопасным и чистым.
FrontendJavaScript
Cookie были единственным способом хранения временной и локальной информации, но теперь у нас есть localStorage. Он широко обсуждается и используется во множестве приложений JavaScript. В этой статье мы рассмотрим всё, что нужно знать о localStorage в JavaScript.
FrontendJavaScript
Удалите функции таймаута и избавьтесь от связанных с ними багов, вот событие которое действительно нужно: scrollend.
BackendFrontendJavaScript
Большинство языков программирования имеют концепцию модулей: способ определить функции в одном файле и использовать их в другом.
JavaScriptNodeJS
Ключевое слово import используется для импорта привязок, которые экспортируются другим модулем, а функция require() используется для загрузки модуля в приложении Node.js. Эти два механизма похожи, но у них есть важные отличия о которых вам следует знать. Мы обсудим их в этой статье.
JavaScript
При написании кода для web, в конечном итоге вам требуется выполнить некий процесс, который может занять несколько минут. JavaScript не может работать в многозадачном режиме, поэтому нам нужен способ обработки этих длительных процессов.
JavaScriptNodeJS
При преобразовании между Buffer и String может быть указана кодировка символов. Если кодировка не указана, по умолчанию будет использоваться UTF-8
JavaScriptNodeJS
Способность понимать Node по-прежнему остаётся важным навыком, если вы фронтэнд разработчик. Deno появился как ещё один способ запуска JavaScript вне браузера, но огромная экосистема инструментов и программного обеспечения Node, означают, что в ближайшее время он никуда не денется.
CSSFrontendHTMLJavaScript
Во второй части рассмотрим несколько примеров непосредственного использования веб-платформы в качестве альтернативы некоторым решениям, предлагаемым фреймворками
FrontendJavaScript
В этой статье подробно рассматривается несколько технических возможностей, которые являются общими для всех фреймворков. Объясняется как они реализуются в различных фреймворках и какова стоимость их применения.
FrontendHTMLJavaScript
Проверка формы — одна из основных причин использования клиентского JavaScript. Это может предотвратить ошибки ввода пользователя до того, как выше приложение попытается отправить данные на сервер.
JavaScript
Для настройки статической части класса у нас есть только статические поля. Предложение ECMAScript вводит статические блоки инициализации для классов, которые, грубо говоря, являются для статических классов тем же, чем конструкторы являются для экземпляров.
JavaScript
Долгое время приходилось прибегать к обходным путям и библиотекам для создания глубокой/deep копии значения JavaScript. Появилась поддержка глубокого копирования встроенной функций structuredClone().
JavaScript
Я вижу много путаницы в отношении неизменяемости/иммутабельности строк и подумал, что сделаю всё возможно, чтобы прояснить, что это значит для запутавшихся.
BackendFrontendJavaScript
На днях коллега подошёл ко мне со строкой кода, которую нашёл на StackOverflow, и спросил, как это работает. И я подумал, что это отличный пример четырёх концепций от среднего до продвинутого уровня JavaScript, поэтому решил записать и обосновать своё объяснение.
JavaScript
Деструктуризация в JavaScript — упрощённый метод извлечения нескольких свойств из массива путём извлечения структуры и разложения её на составные части с помощью присваивания, используя синтаксис, похожий на литералы массива.
JavaScript
Долгое время XML был предпочтительным форматом данных для обмена между двумя точками. Затем, в начале 2000 года, был представлена JSON как альтернативный формат данных для обмена информацией. В этой статье вы узнаете всё о JSON. Вы поймёте, что это такое, как им пользоваться, и мы проясним несколько заблуждений.
BackendFrontendJavaScript
В JavaScript hoisting позволяет использовать функции и переменные до их объявления. В этой статье мы узнаем что такое hoisting, и как он работает.
JavaScriptTypeScript
TypeScript vs JavaScript: В чём разница между TypeScript и JavaScript? JavaScript — язык сценариев, помогающий создавать интерактивные веб-страницы, в то время как Typescript является надмножеством JavaScript.
JavaScriptTypeScript
Сравнение JavaScript и TypeScript: ключевые различия, преимущества каждого языка, практическое применение и рекомендации по выбору для веб-разработки.