Đến phần nội dung
Toova
Tất cả công cụ

Bộ rút gọn và làm đẹp JavaScript

Riêng tư theo thiết kế — chạy hoàn toàn trong trình duyệt của bạn

Rút gọn hoặc làm đẹp JavaScript trong trình duyệt của bạn. Toova nén JS cho sản xuất hoặc mở rộng các bó đã rút gọn thành mã dễ đọc, tất cả mà không tải mã nguồn của bạn lên máy chủ nào.

Rút gọn cấp sản xuất

Chế độ rút gọn loại bỏ chú thích, gập khoảng trắng, và rút ngắn các mẫu phổ biến để tạo ra bó nén. Đầu ra tương đương về ngữ nghĩa với đầu vào — mọi cuộc gọi hàm, mọi tác dụng phụ, mọi xuất khẩu đều sống sót. Hữu ích cho các đoạn một lần không đi qua pipeline xây dựng, hoặc để thu nhỏ kịch bản nội tuyến trong trang HTML trước khi triển khai.

Làm đẹp mã đã rút gọn

Khi bạn cần kiểm toán một thư viện đã rút gọn, gỡ lỗi một kịch bản bị làm rối, hoặc đọc đầu ra đã biên dịch của một framework, chế độ làm đẹp là cái bạn cần. Toova lấy bó một dòng đã rút gọn và mở rộng nó thành mã thụt lề đúng với xuống dòng giữa các câu lệnh, khoảng cách hợp lý quanh các toán tử, và ranh giới khối rõ ràng. Nó không gỡ làm rối — đó là vấn đề riêng — nhưng nó làm mã đủ dễ đọc.

Chỉ cục bộ

Mọi xử lý diễn ra trong trình duyệt của bạn. JavaScript bạn dán không bao giờ rời trang, điều này quan trọng khi nguồn là độc quyền hoặc chứa bí mật bạn không muốn chia sẻ. Trang hoạt động ngoại tuyến sau lần tải đầu tiên và có số yêu cầu đi ra bằng không trong khi xử lý.

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

JavaScript đã rút gọn nhỏ hơn bao nhiêu?
Thường nhỏ hơn 50-70% trước gzip, đôi khi nhiều hơn nhiều nếu nguồn có nhiều khoảng trắng và chú thích. Sau gzip, việc tiết kiệm thu hẹp xuống 20-30% vì nén đã loại bỏ khoảng trắng dư thừa.
Làm đẹp có hoàn tác việc làm rối không?
Không. Làm đẹp định dạng lại mã để nó dễ đọc, nhưng không đổi tên biến về định danh có ý nghĩa hoặc khôi phục tên hàm đã bị tước. Việc làm rối là một chiều theo thiết kế — làm đẹp chỉ sửa định dạng.
Việc rút gọn có phá vỡ JavaScript của tôi không?
Không nếu đầu vào hợp lệ về cú pháp. Trình rút gọn giữ tất cả ngữ nghĩa — mọi cuộc gọi hàm và tác dụng phụ chạy theo cùng thứ tự. Nếu bạn dựa vào Function.name hoặc dấu vết stack cụ thể, những thứ đó có thể thay đổi.
Nó có hỗ trợ JavaScript hiện đại không?
Có. Hàm mũi tên, async/await, hủy cấu trúc, chuỗi tùy chọn, và cú pháp hiện đại khác đều được xử lý đúng. Đầu ra giữ ở cùng mức cú pháp như đầu vào — không có chuyển dịch nào xảy ra.
Mã của tôi có được gửi đến máy chủ không?
Không. Việc xử lý diễn ra hoàn toàn trong trình duyệt của bạn. Không có gì được tải lên hoặc ghi nhật ký.