Chuyển tới nội dung
FileSlimmer
Công cụ
Hướng dẫn

Công cụ mã nguồn

Ba công cụ này phân tích mã nguồn của bạn, viết lại rồi in ra. Điều chúng không bao giờ làm là chạy mã đó. Ranh giới ấy chính là toàn bộ mô hình an toàn ở đây, và nó được bảo đảm bằng chính đoạn mã chạy công cụ, chứ không phải bằng một lời hứa trong một câu văn.

Mã của bạn được phân tích, không bao giờ bị chạy

Một trình rút gọn buộc phải hiểu mã nguồn của bạn, tức là phân tích nó thành một cây cú pháp rồi in cây đó ra. Nó không cần tính toán bất cứ thứ gì, và trình rút gọn này thì không: không có eval, không có Function động, và không có bản xem trước nào chạy script của bạn.

Điều đó quan trọng nhất với SVG. Một tệp SVG là tài liệu chạy được — nó có thể mang theo script, trình xử lý sự kiện và các URL javascript:. Tất cả những thứ đó đều bị gỡ, hai lần: một lần bởi chính quy tắc của trình tối ưu, và một lần nữa bởi một lượt quét độc lập chạy sau đó, vì một bộ lọc duy nhất với một lỗi duy nhất thì không phải là mô hình an toàn.

Rút gọn thực sự tiết kiệm được gì

Bỏ khoảng trắng và rút ngắn tên cục bộ thường lấy đi khoảng một phần ba mã nguồn thô. Phần lợi còn lại chủ yếu đến từ khả năng nén của máy chủ, chứ không phải từ trình rút gọn, nên phép so sánh sát thực tế là tệp đã rút gọn rồi nén gzip — không phải số byte thô.

Các khai báo import được để yên

Một khai báo @import trong CSS được giữ nguyên dưới dạng văn bản, hoặc được gỡ đi nếu bạn yêu cầu. Nó không bao giờ được đi theo: tải về thứ mà nó trỏ tới đồng nghĩa với việc trang này thay mặt bạn gửi một yêu cầu ra ngoài về một tệp bạn vừa dán vào, đúng cái điều mà toàn bộ phần còn lại của trang được xây dựng để không làm.

Hướng dẫn

Hướng dẫn