JS
JS 포맷터
JavaScript를 압축하고 정렬하세요.
JavaScript 포맷팅에 대하여
압축은 주석과 공백을 제거하고 안전한 경우 이름을 줄여 프로덕션용으로 더 작은 파일을 만듭니다. 정렬은 그 반대로, 코드를 다시 들여쓰기하고 펼쳐서 다시 읽을 수 있게 만듭니다.
여기서는 대부분의 최신 JavaScript 빌드 파이프라인에서도 쓰이는 것과 같은 엔진인 Terser로 압축하므로, 결과물은 실제 프로덕션 번들러가 만드는 것과 일치합니다. 압축과 정렬 모두 공백, 주석, 그리고 안전하다고 입증된 경우의 식별자 이름만 바꿀 뿐, 오래된 브라우저를 위해 구문을 트랜스파일하거나 폴리필을 추가하는 일은 결코 하지 않습니다. 대상 브라우저가 지원하지 않는 기능을 쓰는 코드는 별도로 처리해야 합니다. 어느 방향이든 소스맵을 생성하지 않으므로, 정렬된 출력은 디버깅 시 원본 소스 코드를 그대로 대체하는 것이 아니라 읽기용 사본으로 취급하세요.
사용되는 곳
- 프로덕션에 배포하기 전 스크립트 축소
- 읽거나 디버깅하기 위해 압축된 외부 번들 펼치기
- 압축된 소스에서 붙여넣은 코드 정리
- 문서에 코드를 붙여넣기 전 형식 통일
자주 묻는 질문
압축하면 코드가 망가지나요?
압축은 동작을 그대로 유지합니다. 공백, 주석, 그리고 안전한 경우의 식별자만 변경됩니다. 정확한 소스 형식에 의존하는, 드문 경우의 코드는 영향을 받을 수 있습니다.
이것이 코드를 난독화하나요?
아닙니다. 압축은 크기를 줄이는 것이고, 난독화는 코드를 의도적으로 읽기 어렵게 만드는 것입니다. 이 도구는 전자만 수행합니다.
내 코드가 다른 곳으로 전송되나요?
아닙니다. 해당 요청에 대해서만 서버에서 처리되며 저장되거나 기록되지 않습니다.
이 도구가 소스맵을 생성하나요?
아닙니다. 소스맵은 압축된 파일이 실행되는 동안 브라우저의 디버거가 원본의 비압축 소스를 보여주게 해 주지만, 그러려면 배포된 코드와 함께 매핑을 보관해야 하며, 이는 붙여넣고 변환만 하는 이 도구의 범위를 벗어납니다. 프로덕션에서 소스맵이 필요하다면 평소의 빌드 단계 일부로 생성하세요. 그러면 매핑 파일을 번들과 함께 호스팅하거나 업로드할 수 있습니다.