사용 방법
- JavaScript를 붙여 넣거나,
.js파일을 열거나, 샘플로 시작하세요. - 입력하는 대로 압축된 코드가 전후 크기와 함께 표시됩니다. 구문 오류는 줄과 열과 함께 표시됩니다.
- 복사하거나
script.min.js로 다운로드하세요.
기능
JavaScript 압축기는 대부분의 빌드 도구에 들어 있는 압축기인 Terser를 실행합니다.
- 공백과 주석을 제거합니다.
- 지역 변수와 매개변수 이름을 줄입니다(
first는n이 됩니다). 최상위 이름은 그대로 유지되므로 페이지의 다른 스크립트에서 함수를 계속 호출할 수 있습니다. - 실행될 수 없는 코드를 제거하고 표현식을 단순화합니다(
if (x) { return a } else { return b }는return x ? a : b가 됩니다).
효과가 있나요?
JavaScript는 다운로드, 파싱, 실행이 모두 필요해 페이지가 로드하는 것 중 가장 비용이 큽니다. 압축하면 gzip이나 Brotli 전 기준으로 스크립트 크기가 보통 절반이 되고, 그 후에도 3분의 1 정도 줄어드는 경우가 많습니다. 짧은 이름과 사라진 주석도 압축에 도움이 되기 때문입니다. Vite와 esbuild 같은 빌드 도구는 프로덕션용으로 이미 압축합니다. 이 페이지는 직접 작성해 배포하는 스크립트와 스니펫의 압축 결과를 확인하는 데 적합합니다.
자주 묻는 질문
압축하면 코드가 깨질 수 있나요?
Terser는 유효한 코드의 의미를 유지합니다. 실행 중에 자신의 함수 이름이나 소스 텍스트를 읽는 코드(드문 경우)는 다르게 동작할 수 있습니다. 읽기 쉬운 버전을 소스로 보관하고 압축된 버전을 테스트하세요.
최신 JavaScript를 지원하나요?
네. 모듈, 클래스, async/await, 옵셔널 체이닝을 지원합니다. 코드가 실행되는 브라우저는 바뀌지 않습니다.
소스 맵은 어떤가요?
이 페이지에서는 만들지 않습니다. 빌드 도구는 압축된 파일과 함께 소스 맵을 작성하며, 브라우저 개발자 도구에서 원본 코드를 볼 수 있게 해 줍니다.
코드가 업로드되나요?
아니요. Terser가 브라우저에 로드되어 그곳에서 실행됩니다.