JavaScript форматтер и beautifier

Распакуйте и отформатируйте JavaScript, JSON или JSX с нужными отступами и стилем скобок. Или удалите пробелы и комментарии с помощью проверенного минификатора.

Обновлено
 
Отформатированный JavaScript
 

Ваши данные никогда не покидают ваш компьютер. Вся обработка выполняется на 100% локально в вашем браузере.

Был ли этот инструмент полезен?0.0 Оценок: 0
Превратите код в красивое изображение для документации, слайдов и постовТемы подсветки, окно, фон и номера строк.Код в картинку →

Как пользоваться: JavaScript форматтер

  1. Вставьте JavaScript (или JSON/JSX) в поле Input JavaScript, перетащите файл .js или нажмите Sample.
  2. Выберите отступ, при необходимости ширину переноса и стиль скобок. Результат обновляется сразу.
  3. Скопируйте или скачайте результат. Используйте режим Minify, чтобы удалить комментарии и пробелы из небольшого скрипта.

Что такое форматтер JavaScript?

Форматтер (или beautifier) JavaScript пересобирает отступы и разносит инструкции, свойства объектов и блоки по отдельным строкам. Чаще всего его используют, чтобы распаковать продакшен-бандлы и читать их при отладке. Также он удобен для приведения в порядок фрагмента с Stack Overflow, букмарклета или кода, скопированного из чата. Этот инструмент использует js-beautify, который понимает современный синтаксис: стрелочные функции, классы, template literals, async/await, optional chaining, ES-модули и JSX.

Стили скобок

ОпцияРезультат
На той же строке (K&R / «1TBS»)if (ok) { — принятый в большинстве руководств по стилю JavaScript и в Prettier вариант.
На той же строке, сохранить в одну строкуКак выше, но короткие блоки вроде { a: 1 } остаются в одной строке.
На новой строке (Allman)Открывающая скобка на отдельной строке, распространена в кодовых базах C#.
else на новой строке} и else на разных строках (похоже на Stroustrup).

Форматирование не равно деобфускации

Минификаторы вроде Terser или esbuild переименовывают локальные переменные в однобуквенные имена (function(e,t){…}). Форматирование восстанавливает структуру кода, но не может вернуть исходные имена и комментарии: эта информация утеряна. Если сайт публикует source map (//# sourceMappingURL=), DevTools браузера может показать исходники. Код, который намеренно обфусцирован (массивы строк, упаковка через eval), остаётся трудночитаемым даже после форматирования.

О минификаторе

Режим Minify — безопасный минификатор пробелов и комментариев, а не полноценный компрессор. Он корректно разбивает код на токены (строки, template literals, регулярные выражения) и удаляет комментарии и пробелы, но сохраняет перенос строки там, где его удаление могло бы изменить автоматическую вставку точек с запятой, например после return или перед ++. Для каждого результата выполняются две проверки: поток токенов должен совпадать с исходным кодом, а результат должен успешно парситься. Ожидайте экономию 20–40%. Для продакшен-бандлов лучше использовать сборщик, например Terser или esbuild: они также переименовывают переменные и удаляют мёртвый код, что даёт гораздо больший эффект.

Частые проблемы

  • «Не парсится как обычный JavaScript» — появляется для TypeScript, JSX или реальной синтаксической ошибки. Форматирование всё равно работает, а минификация требует корректного JavaScript.
  • JSON здесь форматируется нормально, но JSON-форматтер также проверяет его и указывает на точную ошибку.
  • Хотите сравнить файл до и после изменений? Вставьте обе версии в Diff Checker.

Также ищут как: js beautifier, beautify javascript онлайн, распаковать js, js minifier, jsx форматтер, форматирование js кода.

Инструменты, которые хорошо сочетаются с JavaScript форматтер

  • Код в картинку — Вставьте фрагмент и получите аккуратный скриншот кода за несколько секунд: подсветка синтаксиса для JavaScript, TypeScript, Python, CSS, HTML, JSON, SQL, Bash, Go и PHP, выбор тем, окно с именем файла, градиентный или прозрачный фон, отступы и номера строк.
  • HTML форматер — Вставьте минифицированную или неаккуратную разметку и получите чистый HTML с единообразными отступами, включая встроенные блоки <style> и <script>.
  • CSS Форматер — Превратите минифицированную таблицу стилей в читаемый CSS: одно свойство на строке и правильно вложенные блоки @media.
  • Тестер регулярных выражений — Введите шаблон и смотрите, как совпадения подсвечиваются прямо в тестовом тексте.

Часто задаваемые вопросы

Можно ли распаковать JavaScript с сайта?
Да. Вставьте содержимое файла .min.js, и код будет выведен в читаемом виде. Имена переменных, сокращённые минификатором (например, e, t, n), восстановить нельзя, а комментарии безвозвратно удалены.
Поддерживаются ли TypeScript и JSX?
JSX поддерживается. Большинство TypeScript-кода форматируется приемлемо, так как синтаксис близок к JavaScript, но код с большим количеством типов (дженерики, декораторы) лучше обрабатывать в Prettier. Минификатор принимает только обычный JavaScript.
Безопасно ли использовать минификатор для моего кода?
Он удаляет только комментарии и пробелы и сохраняет переносы строк там, где от них может зависеть автоматическая вставка точек с запятой. Каждый результат проверяется: токены должны совпадать с исходным кодом, и код должен парситься. Если проверка не пройдена, результат не выводится. Всё равно тестируйте код перед публикацией.
Почему мой код сжимается не так сильно, как с Terser?
Terser и esbuild также переименовывают переменные, встраивают константы и удаляют недостижимый код. Этот инструмент намеренно не переписывает код, чтобы результат оставался узнаваемым. Для продакшен-сборок используйте бандлер.
Мой код загружается на сервер?
Нет. Форматирование и минификация выполняются локально в вашем браузере, код не покидает ваше устройство.
Можно ли установить JavaScript форматтер как веб-приложение и пользоваться им офлайн?
Да. JavaScript форматтер — это веб-приложение (PWA), которое можно установить из браузера, без скачивания из магазина приложений. В Chrome или Edge (Windows, macOS, Linux, ChromeOS) или на Android нажмите вверху этой страницы «Установить приложение»; на iPhone и iPad используйте «Поделиться → На экран «Домой»», а в Safari 17+ на Mac — «Файл → Добавить в Dock». После этого приложение откроется в отдельном окне со своим значком, и так как оно полностью работает в браузере, оно продолжит работать офлайн. Firefox на компьютере не умеет устанавливать веб-приложения. Как работает установка.

Похожие инструменты

localКод в картинкуВставьте фрагмент и получите аккуратный скриншот кода за несколько секунд: подсветка синтаксиса для…localJSON форматтерВставьте JSON, чтобы отформатировать, минифицировать или проверить его. Ошибки указываются с точной…localHTML форматерВставьте минифицированную или неаккуратную разметку и получите чистый HTML с единообразными отступами,…localCSS ФорматерПревратите минифицированную таблицу стилей в читаемый CSS: одно свойство на строке и правильно вложенные…localСравнение текстовВставьте исходную и изменённую версии, чтобы увидеть добавленные, удалённые и изменённые строки рядом — с…localТестер регулярных выраженийВведите шаблон и смотрите, как совпадения подсвечиваются прямо в тестовом тексте. Изучайте каждую группу…