본문으로 건너뛰기
Toova
모든 도구

JavaScript 압축기 & 정리기

개인정보 보호 설계 — 브라우저에서 모두 처리됩니다

브라우저에서 JavaScript를 압축하거나 정리합니다. Toova는 프로덕션을 위해 JS를 압축하거나, 압축된 번들을 읽을 수 있는 코드로 확장합니다. 모두 어떤 서버로도 소스를 업로드하지 않고 말입니다.

프로덕션급 압축

압축 모드는 주석을 제거하고, 공백을 축소하며, 일반적인 패턴을 줄여 컴팩트한 번들을 생성합니다. 출력은 입력과 의미적으로 동일합니다. 모든 함수 호출, 모든 부작용, 모든 내보내기가 살아남습니다. 빌드 파이프라인을 통과하지 않는 일회성 스니펫이나 배포 전에 HTML 페이지의 인라인 스크립트를 축소하는 데 유용합니다.

압축된 코드 정리

압축된 라이브러리를 감사하거나, 난독화된 스크립트를 디버깅하거나, 프레임워크의 컴파일된 출력을 읽어야 할 때 정리 모드가 원하는 것입니다. Toova는 단일 라인 압축 번들을 가져와 명령문 사이에 줄바꿈, 연산자 주변에 합리적인 공백, 명확한 블록 경계가 있는 적절히 들여쓰기된 코드로 확장합니다. 난독화를 해제하지는 않습니다(그것은 별도의 문제). 하지만 코드를 읽을 수 있을 만큼 가독성 있게 만듭니다.

로컬 전용

모든 처리는 브라우저에서 이루어집니다. 붙여 넣은 JavaScript는 페이지를 떠나지 않습니다. 소스가 독점이거나 공유하지 않을 비밀이 포함될 때 중요합니다. 첫 로드 후 페이지는 오프라인에서 작동하며 처리 중 외부로 나가는 요청이 전혀 없습니다.

자주 묻는 질문

압축된 JavaScript는 얼마나 더 작습니까?
일반적으로 gzip 전에 50-70% 더 작으며, 소스에 공백과 주석이 많았다면 훨씬 더 작을 수 있습니다. gzip 후 압축은 이미 중복 공백을 제거하기 때문에 절약은 20-30%로 줄어듭니다.
정리가 난독화를 되돌립니까?
아니요. 정리는 코드를 읽기 쉽게 재포맷하지만 변수를 의미 있는 식별자로 다시 이름 짓거나 제거된 함수 이름을 복원하지 않습니다. 난독화는 설계상 일방향입니다. 정리는 형식만 수정합니다.
압축이 제 JavaScript를 깨뜨립니까?
입력이 구문적으로 유효하면 그렇지 않습니다. 압축기는 모든 의미를 보존합니다. 모든 함수 호출과 부작용이 동일한 순서로 실행됩니다. Function.name 또는 특정 스택 추적에 의존하는 경우 변경될 수 있습니다.
최신 JavaScript를 지원합니까?
예. 화살표 함수, async/await, 구조 분해 할당, 선택적 체이닝 및 기타 최신 구문이 모두 올바르게 처리됩니다. 출력은 입력과 동일한 구문 수준으로 유지됩니다. 트랜스파일이 일어나지 않습니다.
제 코드가 서버로 전송됩니까?
아니요. 처리는 전적으로 브라우저에서 이루어집니다. 업로드되거나 로깅되는 것이 없습니다.