DevTulz Online

JSON → TypeScript Types


เครื่องมือนี้ทำอะไร?

เครื่องมือนี้แปลงออบเจ็กต์หรืออาร์เรย์ JSON เป็นการประกาศ TypeScript interface หรือ type โดยจัดการออบเจ็กต์ซ้อนกันแบบเรียกซ้ำ (สร้าง interfaces แยกสำหรับแต่ละอัน) อาร์เรย์ของออบเจ็กต์ (รวม schema) ฟิลด์ที่เป็นตัวเลือก (เมื่อ key ขาดหายจากบาง array item) และค่า null ผลลัพธ์พร้อมสำหรับวางลงในโปรเจกต์ TypeScript ของคุณ

วิธีใช้งาน

  1. วาง JSON ลงในแผงด้านซ้าย — ประเภท TypeScript จะปรากฏทันทีทางด้านขวา

  2. ตั้งชื่อ root interface (ค่าเริ่มต้น: Root)

  3. เลือกรูปแบบ interface หรือ type alias

  4. เปิดใช้ 'null → optional' เพื่อจัดการฟิลด์ null เป็น unknowns ที่เป็นตัวเลือกแทน null ที่ชัดเจน

  5. คลิก โหลดตัวอย่าง เพื่อดูตัวอย่างการแปลง

อาร์เรย์ของออบเจ็กต์ถูกจัดการโดยการรวม schema ของทุก item — key ที่มีอยู่ในบาง item เท่านั้นจะถูกทำเครื่องหมายเป็น optional โดยอัตโนมัติ การแปลงทั้งหมดเกิดขึ้นในเบราว์เซอร์ของคุณ

คำถามที่พบบ่อย

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

ความแตกต่างระหว่าง Base64 และ URL-safe Base64 คืออะไร Base64 มาตรฐานใช้อักขระ + และ / ซึ่งเป็นอักขระพิเศษใน URL URL-safe Base64 แทนที่อักขระเหล่านี้ด้วย - และ _ เพื่อให้สตริงนี้สามารถใช้ได้อย่างปลอดภัยใน URL และชื่อไฟล์โดยไม่ต้อง percent-encoding

ทำไมผลลัพธ์ที่ถอดรหัสของฉันจึงดูเหมือนข้อความไร้สาระ หากข้อมูลดั้งเดิมเป็นข้อมูลไบนารี (เช่น รูปภาพ PDF หรือไฟล์ที่ถูกบีบอัด) ผลลัพธ์ที่ถอดรหัสจะไม่ใช่ข้อความที่อ่านได้ ในกรณีนั้น สตริง Base64 แทนไฟล์ไบนารี ไม่ใช่สตริงข้อความ

Base64 เป็นรูปแบบของการเข้ารหัส (encryption) หรือไม่ ไม่ Base64 เป็นโครงร่างการเข้ารหัส (encoding) ไม่ใช่การเข้ารหัส (encryption) ใครก็ตามสามารถถอดรหัสสตริง Base64 ได้โดยไม่ต้องใช้กุญแจ ไม่ควรใช้เพื่อปกป้องข้อมูลที่ละเอียดอ่อน — ใช้การเข้ารหัสที่เหมาะสม

Keywords: JSON เป็น TypeScript, JSON เป็น TS, JSON เป็น interface, ตัวสร้างประเภท TypeScript, การอนุมานประเภท JSON, TypeScript interface จาก JSON