เครื่องย่อข้อมูล JSON
ให้วางเอกสาร JSON ที่มีการพิมพ์อย่างสวยงามเข้าไป จากนั้นแปลงเป็นรูปแบบบรรทัดเดียวโดยตัดไบต์ที่ไม่จำเป็นทั้งหมดออกไป ได้แก่ ช่องว่างระหว่างโทเคน บรรทัดใหม่ ช่องว่างท้ายบรรทัด และความคิดเห็น JSONC ผลลัพธ์ที่ได้มีจำนวนไบต์เท่ากับรูปแบบการเข้ารหัสที่สั้นที่สุดสำหรับข้อมูลเดียวกัน พร้อมใช้งานได้ทันทีสำหรับการฝังใน <script> พารามิเตอร์ URL หรือ payload ที่จ่ายค่าบริการตามจำนวนไบต์
วิธีลดขนาดไฟล์ JSON ให้น้อยที่สุด
-
1
วางข้อมูลในรูปแบบ JSON
ข้อมูลที่ถูกพิมพ์อย่างแม่นยำ หรือได้รับการลดขนาดไปแล้วบางส่วน จะถูกวิเคราะห์โครงสร้างและแปลงรูปแบบใหม่
-
2
ลดขนาดให้น้อยที่สุด
ช่องว่างทั้งหมดระหว่างโทเคนจะถูกลบออกไป ความคิดเห็นจะถูกลบออก ส่วนตัวเลขจะถูกเก็บไว้ตามสภาพเดิม
-
3
ดูค่าเดลต้าของขนาด
จำนวนไบต์ก่อนและหลัง รวมถึงอัตราการลดลงเป็นเปอร์เซ็นต์
-
4
คัดลอกผลลัพธ์
รูปแบบ JSON แบบบรรทัดเดียว พร้อมใช้ในการวางลงในไฟล์โค้ดหรือคำขอ API
สิ่งที่ถูกลบออก
- ช่องว่างระหว่างโทเคน: ช่องว่าง แท็บ และบรรทัดใหม่
- ความคิดเห็น (รูปแบบ JSONC คือ
//และ/* */), ถูกลบออก เนื่องจาก JSON ที่เข้มงวดไม่อนุญาตให้ใช้ - BOM และช่องว่างนำหน้าที่ตำแหน่งเริ่มต้นของเอกสาร
สิ่งที่ไม่ถูกลบออก
- ค่า: ทุกสตริง ตัวเลข ค่าบูลีน และค่า null จะถูกเก็บรักษาไว้อย่างแม่นยำ
- รูปแบบของตัวเลข: ทุกตัวเลขจะถูกเก็บไว้ตรงตามที่เขียนไว้ทุกประการ:
1.50ยังคงเป็น1.50และ1e-3ยังคงเป็น1e-3เครื่องมือนี้จะรักษาความแม่นยำที่คุณป้อนไว้ - ลำดับของคีย์: ออบเจ็กต์จะคงลำดับการแทรกเดิมไว้
ทำไมต้องลดขนาดไฟล์ JSON
- ปริมาณข้อมูลที่ส่งน้อยลง: ไฟล์กำหนดค่าขนาด 120 KB ที่มีรูปแบบการพิมพ์สวยงามสามารถลดขนาดลงเหลือเพียง 70 KB ได้ ซึ่งเป็นสิ่งสำคัญสำหรับทุกคำขอ
- การแทรกแบบอินเลน (Inline embeds): เมื่อคุณใส่ข้อมูลในรูปแบบ JSON ลงในแท็ก
<script>หรือพารามิเตอร์ URL พื้นที่ว่างจะทำให้สูญเสียแบนด์วิดธ์ - ความเสถียรของแฮช: เอกสาร JSON สองฉบับที่มีความหมายเท่ากัน แต่มีค่าแฮชจากช่องว่างต่างกันจะให้ค่าแฮชที่แตกต่างกัน การลดขนาดข้อมูลก่อนจะช่วยให้ได้ค่าแฮชที่สอดคล้องกัน (แม้ว่าการปรับรูปแบบข้อมูลอย่างถูกต้องจะทำให้คีย์ถูกเรียงลำดับด้วย)
ข้อมูลอ้างอิงเกี่ยวกับการประหยัดไบต์
| ข้อมูลนำเข้า | จัดรูปแบบแล้ว (2 ช่องว่าง) | ย่อขนาดแล้ว | การประหยัด |
|---|---|---|---|
| การตั้งค่าขนาดเล็ก (50 คีย์) | 1.8 KB | 1.1 KB | 39% |
| การตอบสนองของ API (ซ้อนกัน 5 KB) | 6.2 KB | 4.1 KB | 34% |
| การถอดข้อมูลขนาดใหญ่ | 1.2 เมกะไบต์ | 0.8 เมกะไบต์ | 33% |
หลังจากใช้ gzip ความแตกต่างจะลดลงอย่างมาก เนื่องจาก gzip สามารถบีบอัดช่องว่างได้อย่างมีประสิทธิภาพอยู่แล้ว สำหรับข้อมูลแบบไบต์ดิบ (เช่น URL และเนื้อหาที่ฝังในบรรทัด) ควรใช้การย่อขนาด ส่วนกรณีที่ส่งผ่านเครือข่ายควรพึ่งพา gzip
กรณีที่ไม่ควรลดขนาดไฟล์
- ไฟล์กำหนดค่าที่จัดเก็บไว้ในระบบควบคุมเวอร์ชัน, ความอ่านเข้าใจมีความสำคัญมากกว่าปริมาณข้อมูลในไบต์
- ไฟล์ที่มนุษย์แก้ไข, ไม่มีใครแก้ไขไฟล์ JSON ที่ถูกลบข้อมูลออกไปด้วยตนเองโดยไม่รู้สึกเสียใจเลย
- การแก้ไขข้อผิดพลาดในไฟล์บันทึก, ไฟล์ JSON ขนาด 400 KB ที่มีเพียงบรรทัดเดียวในไฟล์บันทึกเหตุการณ์ระบบล่มนั้นอ่านไม่ได้
ข้อผิดพลาดที่พบบ่อย
- การย่อขนาดไฟล์ JSON ที่ต้องอาศัยความคิดเห็น: ความคิดเห็นจะถูกลบออกไป และพฤติกรรมของตัวแยกวิเคราะห์อาจเปลี่ยนแปลงได้หากมีเครื่องหมายประเภท “TODO”
- การย่อขนาดของตัวเลขทศนิยม บางเครื่องมือจะแปลงข้อมูล
0.1ใหม่ในรูปแบบที่แตกต่างจากข้อมูลขาเข้า โดยเครื่องมือนี้จะรักษารูปแบบการแสดงผลเป็นสตริงไว้อย่างแม่นยำ - ใช้การย่อขนาดแทนการบีบอัด สำหรับข้อความ gzip ประหยัดไบต์ได้มากกว่าการย่อขนาด ควรใช้ทั้งสองวิธีร่วมกัน ไม่ควรแทนที่กัน
คำถามที่พบบ่อย
โดยทั่วไป ขนาดจะเล็กลงประมาณ 30–40% เมื่อเทียบกับไฟล์ที่มีการพิมพ์อย่างสวยงาม การประหยัดนี้เกิดขึ้นเกือบทั้งหมดจากพื้นที่ว่าง ในขณะที่ข้อมูลจริงไม่เปลี่ยนแปลงเลย หลังจากการใช้ gzip ความแตกต่างระหว่างไฟล์ที่ถูกบีบอัดแล้วกับไฟล์ที่มีการพิมพ์อย่างสวยงามมักจะต่ำกว่า 5% เนื่องจาก gzip สามารถจัดการกับพื้นที่ว่างได้อย่างมีประสิทธิภาพ
เครื่องมือนี้รักษารูปแบบตัวเลขในรูปแบบสตริงอย่างแม่นยำ โดย 1.50 จะคงอยู่ที่ 1.50 และ 1e-3 ก็จะคงอยู่ที่ 1e-3 โปรแกรมลดขนาดบางตัวสามารถปรับรูปแบบให้เป็นมาตรฐานได้ แต่โปรแกรมนี้ทำงานแบบระมัดระวังโดยค่าเริ่มต้น ดังนั้นจึงไม่มีการสูญเสียความแม่นยำโดยไม่ได้ตั้งใจ
ไม่ การย่อขนาดทำงานทั้งหมดภายในเบราว์เซอร์ของคุณ โดยข้อมูล JSON ที่วางไว้จะไม่ถูกส่งออกจากเครื่องของคุณ จึงเหมาะอย่างยิ่งสำหรับการรับผลตอบกลับจาก API ที่มีโทเคนหรือข้อมูลกำหนดค่าส่วนตัว
ใช่, ความคิดเห็นสามารถมีอยู่ในข้อมูลขาเข้า และจะถูกลบออกไปในผลลัพธ์ (JSON แบบเข้มงวดไม่อนุญาตให้มีความคิดเห็น) หากคุณต้องการรักษาความคิดเห็นเหล่านั้นไว้ ควรเก็บไฟล์ต้นฉบับ JSONC ที่มีรูปแบบการแสดงผลที่เหมาะสม และดำเนินการลดขนาดเฉพาะในขณะนำไปใช้งานจริงเท่านั้น
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
ตัวตรวจสอบอีเมล
ตรวจสอบที่อยู่อีเมล: ตรวจไวยากรณ์ RFC 5322 ค้นหา MX เรกคอร์ดแบบเรียลไทม์ พร้อมรายละเอียดส่วนท้องถิ่น โดเมน และความยาว ไม่มีการส่งอีเมลใด ๆ
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
เครื่องมือสร้าง EditorConfig
สร้างไฟล์ .editorconfig ด้วยกฎสไตล์และขนาดการเยื้อง การจบบรรทัด ชุดอักขระ และช่องว่างของคุณ เพื่อให้การจัดรูปแบบสอดคล้องกันในทุก IDE และโปรแกรมแก้ไข
เครื่องมือนี้มีให้บริการในภาษาอื่น
- Minifier JSON [ID]
- JSON圧縮ツール [JA]
- Bộ rút gọn JSON [VI]
- JSON-Minifier [DE]
- JSON 압축기 [KO]
- Minifikator formatu JSON [PL]
- Minificador de JSON [PT]
- Minificador JSON [ES]
- JSON-minifierare [SV]
- مُختصر بيانات JSON [AR]
- Minificateur JSON [FR]
- JSON-minifier [NL]
- Минифайер JSON [RU]
- JSON Minifier [TR]
- JSON 压缩器 [ZH]
- JSON Minifier [EN]
- Minificatore JSON [IT]