มีตัวย่อ JavaScript ที่ดีหรือไม่? [ปิด]


132

คุณแนะนำตัวย่อ JavaScript อะไร


2
คุณเคยลองdean.edwards.name/packerหรือยัง?
Alexander Suraphel

แม้ว่าคำถามจะเก่าและปิดไปแล้ว แต่ในปี 2019 - terser ( github.com/terser-js/terser ) เป็นตัวย่อที่ดี นอกจากนี้ยังมีปลั๊กอินสำหรับ Rollup ซึ่งเหมาะสำหรับการลดขนาดกลุ่มได้ทันที
Levi Roberts

คำตอบ:


112

UglifyJS2ใช้โดยโครงการ jQuery


17
คุณสามารถใช้ UglifyJS ออนไลน์โดยไม่จำเป็นต้องติดตั้ง - jscompress.com +1 สำหรับผลิตภัณฑ์ที่ใช้โดย jQuery
TMS

1
ใช้มากกว่าการปิดหรือไม่?
FutuToad

@FutuToad: รุ่นปัจจุบันคือUglifyJS2 ฉันกำลังมองหาการเปรียบเทียบตัวย่อและพบสถิติที่นี่lisperator.net/uglifyjs - ดูเหมือนว่า Google Closure จะช้ากว่า UglifyJS อย่างไรก็ตามการปิดสามารถลดขนาดโครงการ AngularJS ดังนั้นจึงไม่มีผู้ชนะที่ชัดเจน ฉันเดาว่า (หลังจากการวิจัยเป็นเวลานานหนึ่งชั่วโมง) ว่า UglifyJS2 ใช้มากกว่า GC
Martin Vseticka

ปล: คุณสามารถลองMinify JS ที่ใช้ UglifyJS2 และซอร์สโค้ดของคุณจะไม่ถูกส่งไปยังเซิร์ฟเวอร์ระยะไกล ;)
Martin Vseticka

UglifyJS รองรับ es6 หรือไม่ เครื่องมือทั้งหมดที่ฉันพบข้อผิดพลาดของ throw เนื่องจากฉันใช้ฟังก์ชัน es6 จำนวนมากในไฟล์ของฉัน
kinger6621

31

คล่องแคล่ว

เลิกใช้แล้ว


โดยทั่วไป Google Closure Compiler จะได้ไฟล์ที่มีขนาดเล็กกว่า YUI Compressor โดยเฉพาะอย่างยิ่งถ้าคุณใช้โหมดขั้นสูงซึ่งดูน่ากังวลสำหรับฉัน แต่ทำงานได้ดีในโครงการเดียวที่ฉันเคยใช้:

โครงการใหญ่ ๆ หลายโครงการใช้ UglifyJS และฉันประทับใจมากตั้งแต่เปลี่ยนมา


2
Google CC โหมดง่ายมีขนาดเล็กกว่า YUI และปลอดภัยเช่นกัน
gblazex

10

หากคุณใช้ PHP คุณอาจต้องการดูที่minifyซึ่งสามารถย่อขนาดและรวมไฟล์ JavaScript ได้ การรวมค่อนข้างง่ายและสามารถทำได้โดยกลุ่มไฟล์ที่กำหนดหรือสตริงการสืบค้นที่ง่าย ไฟล์ที่ย่อขนาดจะถูกแคชเพื่อลดภาระของเซิร์ฟเวอร์และคุณสามารถเพิ่มส่วนหัวที่หมดอายุผ่านการย่อขนาดได้


10

JavaScript Minifierให้ API ที่ดีที่คุณสามารถใช้ทางโปรแกรมได้:

curl -X POST -s --data-urlencode 'input=$(function() { alert("Hello, World!"); });' http://javascript-minifier.com/raw

หรือโดยการอัปโหลดไฟล์และเปลี่ยนเส้นทางไปยังไฟล์ใหม่:

curl -X POST -s --data-urlencode 'input@ready.js' http://javascript-minifier.com/raw > ready.min.js

หวังว่าจะช่วยได้


ใช้ HTTPS แทน
PYK

9

มีหลายอย่างที่คุณสามารถใช้ / ลอง:


1
Hypercrunching คืออะไร? นี่คือสิ่งที่ฉันได้รับจากหัวข้อ: ajaxmin.codeplex.com/discussions/260683
Ehtesh Choudhury

1
@EhteshChoudhury หมายความว่ามินิไฟเออร์จะก้าวร้าวมากขึ้น จะนำโค้ดที่ไม่ได้ใช้ออกไปและย่อชื่อของตัวแปรโลคัลด้วย
Kris van der Mast

7

1
ฉันต้องบอกว่านี่เป็นเครื่องมือออนไลน์ที่ดีที่สุดในขณะที่เครื่องมืออื่น ๆ บางส่วนก็ไม่ได้ผลเมื่อคุณให้อะไรมากกว่า 8000 บรรทัดเพื่อลดขนาด
Mr.Concolato


4

เครื่องมือนี้: jscompressor.comค่อนข้างดี


เว็บไซต์อยู่ในสถานะออฟไลน์
Maciek Łoziński

ขอบคุณ. มันทำงานกับฉัน นี่เป็นเว็บไซต์ที่ดีที่สุดที่ฉันเคยใช้ในการย่อขนาด Javascript
Bao Nam

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.