min.js 안을 들여다볼 때
배포된 자바스크립트는 한 줄에 수십만 자가 들어 있습니다. 여기 붙여넣으면 들여쓰기와 줄바꿈이 복원되어 구조를 읽을 수 있습니다.
버그가 라이브러리 안쪽에서 나는데 소스맵이 없을 때, 또는 스택 트레이스가 가리키는
a.js:1:48210 근처가 무슨 코드인지 확인할 때 씁니다.
변수 이름은 돌아오지 않습니다
정렬은 공백만 복원합니다. 압축 과정에서 userName이
a로 바뀌었다면 그건 되돌릴 수 없습니다 — 원래 이름이 파일 어디에도 남아 있지
않기 때문입니다. 주석도 마찬가지입니다.
원본에 가깝게 보려면 소스맵(.js.map)이 필요합니다. 배포에 함께 올라가
있다면 브라우저 개발자 도구가 자동으로 원본을 보여 줍니다.
옵션
| 옵션 | 설명 |
|---|---|
| 중괄호 위치 | 같은 줄(if (x) {)이 자바스크립트 관례입니다. 자동 세미콜론 삽입 때문에 return 뒤 줄바꿈은 어차피 위험합니다 |
| 줄 길이 제한 | 지정한 길이를 넘으면 줄을 나눕니다. 0이면 나누지 않습니다. 긴 체이닝을 볼 때 80~120이 읽기 좋습니다 |
이 정렬기에 대해
브라우저 안에서 js-beautify(MIT)를 돌립니다. beautifier.io가 쓰는 것과 같은 엔진입니다. 코드는 서버로 전송되지 않으므로, 사내 코드를 붙여넣어도 밖으로 나가지 않습니다.
난독화된 코드도 읽을 수 있게 되나요?
구조는 보입니다. 하지만 문자열을 배열에 모아 인덱스로 꺼내 쓰는 식의 본격적인 난독화는 정렬만으로 읽히지 않습니다. 그건 압축이 아니라 일부러 못 읽게 만든 것이라 원리가 다릅니다.
JSON도 이걸로 정렬하나요?
JSON 정렬을 쓰세요. 문법 검사와 구조 요약이 함께 나옵니다.