CoderTools

JavaScript 압축기 및 포맷터

사용자 정의 옵션으로 JavaScript 코드를 압축하거나 포맷

🔒 100% 로컬 처리입력하신 데이터는 브라우저에서 완전히 처리되며, 서버로 전송되지 않습니다.
입력 크기: 0 bytes
출력 크기: 0 bytes

JavaScript 압축기 및 포맷터 문서

이 도구는 무엇인가요?

JavaScript 압축은 런타임 의미론을 보존하면서 공백, 주석, 불필요한 토큰을 제거합니다. CSS와 달리 자동 세미콜론 삽입(ASI) 규칙을 존중해야 합니다. 이 도구는 모든 주석(// 및 /* */)을 제거하면서 ASI 민감한 줄바꿈을 보존하는 보수적인 공백 제거를 적용합니다.

주요 기능

  • 공백 및 주석 제거: 문장 간 공백, 빈 줄, // 및 /* */ 제거. 문자열, 템플릿, 정규식 리터럴 보존.
  • ASI 안전 줄바꿈 처리: ASI 유발 행동 변화 방지를 위해 (, [, /, +, - 로 시작하는 문장 앞 줄바꿈 유지.
  • 변수 이름 변경 없음: Terser/UglifyJS와 달리 로컬 변수를 한 글자로 바꾸지 않습니다.
  • ES6+ 지원: 화살표 함수, 구조분해, 템플릿 리터럴, 옵셔널 체이닝(?.), 널 병합(??) 처리.
  • 설정 가능한 미화기: 2/4칸 또는 탭; {/}/; 후, // 전 줄바꿈; 따옴표 스타일 정규화.

일반적인 사용 사례

  • 개발 디버깅: 소스맵 없이 프로덕션 압축 JS(React/Vue/Angular 번들)를 미화.
  • 간단한 압축: Webpack 없이 HTML 인라인 JS 축소.
  • 보안 분석: 난독화된 서드파티 스크립트를 미화하여 내용 평가.
  • 크기 추정: 공백 제거 vs Terser 변수 이름 변경 효과 비교.

자바스크립트 미니파이어 사용법

두 가지 모드: Minify(주석/공백 제거로 크기 감소)와 Beautify(일관된 들여쓰기로 재형식화).

자바스크립트 압축하기:

  1. JavaScript 소스 코드를 입력 패널에 붙여넣거나 .js 파일을 업로드합니다.
  2. “Minify” 버튼을 클릭합니다. 문자열 내용과 ASI 안전 줄바꿈을 보존하면서 공백과 주석을 제거합니다.
  3. 압축된 출력을 복사하거나 .js 파일로 다운로드합니다. 크기 감소율이 하단에 표시됩니다.

자바스크립트 포맷팅/정리하기:

  1. 압축되거나 읽기 어려운 JavaScript를 입력 패널에 붙여넣습니다.
  2. 들여쓰기 스타일을 선택한 후 “Beautify”를 클릭합니다.
  3. 형식화된 출력이 출력 패널에 나타납니다.

왜 JavaScript를 압축해야 하나요?

JS 압축은 스크립트 파일 크기를 줄여 TTFB와 TTI를 개선합니다. 공백만: 20-40% 감소; 변수 이름 변경(Terser): 40-65%. Gzip 추가 시 60-75% 더 감소.

압축 JS는 V8/SpiderMonkey 파싱 시간도 줄입니다. 모바일에서 절약된 KB는 FID와 INP(Core Web Vitals) 점수를 개선합니다.

정리 기능의 구체적인 조정

압축된 JS에서 가독성 있는 들여쓰기를 재구성. 중첩 함수·클래스·제어 구조 처리.

  • 설정 가능한 들여쓰기: 2칸, 4칸 또는 탭
  • {/}/; 후와 // 주석 전에 줄바꿈 삽입
  • 따옴표 스타일 정규화: 단따옴표/쌍따옴표/백틱 변환
  • 중첩 함수·클래스를 증가하는 들여쓰기 수준으로 보존

압축 기능의 구체적인 조정

바이트를 줄이는 텍스트 수준 변환 패스, 런타임 동작 불변.

  • 모든 // 단행 주석 제거
  • 모든 /* */ 다행 주석 제거(JSDoc 포함)
  • 문장 간 공백·빈 줄 제거
  • ASI 민감한 (, [, /, +, - 앞 줄바꿈 유지
  • 문자열·템플릿·정규식 리터럴 내용 변경 없음

예상 파일 크기 영향

텍스트 수준: 20-40% 감소. Terser 이름 변경: 40-65%. Gzip 추가: 60-75%, 합산 85-90%.

정리
가독성 향상
압축
20-40% 감소

관련 도구

빠른 메뉴

최근 사용 도구 없음