UTILS.
100% trong trình duyệt
🗜️

Công cụ Nén JavaScript

Thu nhỏ JavaScript bằng cách loại bỏ chú thích và khoảng trắng thừa trong khi bảo toàn an toàn chuỗi, template literal và regex — chạy cục bộ trong trình duyệt của bạn.

— kết quả hiển thị ở đây —

Về công cụ này

Công cụ Nén JavaScript giảm kích thước một script bằng cách loại bỏ chú thích và thu gọn khoảng trắng và dòng mới thừa, rồi báo cáo mức tiết kiệm byte. Đây là cách nhanh, không phụ thuộc thư viện để thu nhỏ một script hoặc đoạn mã nhỏ trước khi dán nó vào nơi nhạy cảm về kích thước. Toàn bộ xử lý là cục bộ — mã được coi thuần túy như văn bản và không bao giờ được thực thi, nên không có eval và không có gì được tải lên.

Đây là một trình nén thận trọng, nhận biết token. Nó quét mã nguồn thành các token, bước qua đúng phần bên trong của chuỗi, template literal, biểu thức chính quy và chú thích, nên nội dung của chúng được bảo toàn nguyên từng byte. Chú thích được bỏ đi (hoặc giữ lại, qua nút chuyển), và các chuỗi khoảng trắng được loại bỏ ở mọi nơi trừ khi một khoảng trắng thực sự cần thiết — giữa hai token định danh/số/từ-khóa (để 'return a' không bao giờ trở thành 'returna') hoặc giữa hai ký tự toán tử mà nếu không sẽ hợp lại (để 'a + +b' giữ khoảng trắng của nó). Một regex literal theo sau một từ khóa cũng giữ khoảng trắng phân cách của nó.

Vì nó không dựng lại một cây cú pháp trừu tượng, nó không đổi tên biến hay thực hiện loại bỏ mã chết — nó chỉ loại bỏ những gì chắc chắn an toàn để loại bỏ. Nó cũng thu gọn dòng mới, nên mã dựa vào việc chèn dấu chấm phẩy tự động qua các ngắt dòng nên đã dùng sẵn dấu chấm phẩy tường minh. Bảng điều khiển hiển thị kích thước gốc, kích thước đã nén, và phần trăm tiết kiệm.

Câu hỏi thường gặp

Nó có đổi tên biến hay nén logic không?
Không. Đây là trình nén khoảng-trắng-và-chú-thích thận trọng, không phải trình nén đầy đủ. Nó không xáo trộn tên biến, gộp hằng số, hay loại bỏ mã chết — nó chỉ loại bỏ chú thích và khoảng trắng không thiết yếu, nên đầu ra vẫn dễ so sánh (diff) với mã nguồn.
Chuỗi và regex của tôi có an toàn không?
Có. Trình nén phân tích token mã nguồn và bảo toàn chính xác phần bên trong của chuỗi, template literal và biểu thức chính quy. Khoảng trắng và văn bản giống chú thích bên trong chúng không bao giờ bị đụng đến, nên mã đã nén hoạt động giống hệt.
Việc nén có thể làm hỏng mã của tôi không?
Nó thu gọn dòng mới, nên các script phụ thuộc vào việc chèn dấu chấm phẩy tự động qua các ngắt dòng có thể thay đổi ý nghĩa. Nếu mã của bạn đã dùng dấu chấm phẩy tường minh — như hầu hết các mã — đầu ra là tương đương. Khi nghi ngờ, hãy kiểm tra kết quả đã nén.
Các con số kích thước có nghĩa là gì?
Sau khi nén, công cụ đo mã nguồn gốc và đã nén theo byte UTF-8 và hiển thị cả hai cùng với phần trăm giảm, nên bạn có thể thấy chính xác script đã nhỏ đi bao nhiêu.

Công cụ khác