ข้ามไปที่เนื้อหา

JSON เป็น TypeScript

JSON เป็น TypeScript จะแปลงตัวอย่าง JSON เป็น TypeScript interface และ type alias ภายในเบราว์เซอร์ พร้อมฟิลด์ตัวเลือก การอนุมาน union/null/Date ชื่อ root และการคัดลอกหรือดาวน์โหลดเป็น .ts

JSON

อักขระ

0 / 50,000

TypeScript

JSON เป็น TypeScript

เริ่มต้นอย่างรวดเร็ว

1
วางตัวอย่าง JSON ที่ถูกต้องในตัวแก้ไขด้านซ้าย
2
ตั้งชื่อ type หลัก เช่น ApiResponse ถ้าต้องการ
3
ดู TypeScript ด้านขวา: object เป็น interface; array หรือ primitive เป็น type alias
4
คัดลอกหรือดาวน์โหลด .ts ที่สร้าง; ฝั่งอินพุตจัดการตัวอย่าง JSON ได้

สถานการณ์การใช้งานทั่วไป

แปลง response ของ API จริงให้เป็นโมเดล TypeScript ตั้งต้นสำหรับหน้า frontend, SDK client หรือ integration test จากนั้นสามารถคัดลอก ดาวน์โหลด หรือส่งออกผลลัพธ์ได้ทันที

ตรวจสอบ array ของ object ที่มีหลายรูปแบบเพื่อดูฟิลด์แบบ optional และ union type ก่อนสรุปสัญญา API จากนั้นสามารถคัดลอก ดาวน์โหลด หรือส่งออกผลลัพธ์ได้ทันที

แปลงข้อมูล JSON จำลองให้เป็น type definitions แบบเร็วสำหรับ fixture, Storybook หรือ prototype

ตรวจสอบประกาศแบบซ้อนอย่าง User หรือ Meta เมื่อรูปแบบ payload ฝั่ง backend เปลี่ยนไป จากนั้นสามารถคัดลอก ดาวน์โหลด หรือส่งออกผลลัพธ์ได้ทันที

คำแนะนำการใช้งาน

ใช้ตัวอย่าง JSON ที่เป็นตัวแทน นี่เป็นการอนุมานตามตัวอย่าง ดังนั้นฟิลด์หรือค่าที่ขาดหายไปจึงไม่สามารถปรากฏในเอาต์พุตได้
array ว่างจะกลายเป็น unknown[] และ object ว่างจะกลายเป็น interface ที่ขยายจาก Record<string, unknown> จนกว่าคุณจะให้ข้อมูลตัวอย่างที่ครบขึ้น
ชื่อประกาศแบบซ้อนจะถูกปรับมาตรฐานจากชื่อ property ดังนั้นผลลัพธ์ใหม่จึงมักใช้ชื่ออย่าง User หรือ Meta แทนรูปแบบเก่าที่มี prefix ของ root
การสร้างจะทำงานเฉพาะกับ JSON ที่ถูกต้องเท่านั้น แก้ syntax error ก่อน โดยตัวแก้ไขจะแสดงบรรทัดและคอลัมน์เมื่อ parse ไม่ผ่าน
ชื่อ root แบบกำหนดเองที่ถูกต้องจะถูกเก็บไว้ตามเดิม ส่วนชื่อที่ไม่ถูกต้องจะถูกปรับเป็น PascalCase TypeScript identifier ที่ถูกต้อง

พิมพ์ขอบเขตการอนุมาน

ตัวสร้างอนุมานจากตัวอย่างปัจจุบัน ไม่ใช่จาก JSON Schema, Open API, GraphQL, ไฟล์, URL, JSON Lines หรือตัวอย่างแบทช์
อาร์เรย์ผสานรูปร่างรายการที่สังเกต: ช่องที่ขาดหายไปจากบางรายการจะกลายเป็นตัวเลือก และค่าว่างหรือค่าผสมจะกลายเป็นสหภาพ
สตริงที่มีลักษณะเหมือนวันที่อาจถูกอนุมานเป็น Date แต่ค่ารันไทม์ JSON ยังคงเป็นสตริง เว้นแต่ว่าโค้ดของคุณจะแยกวิเคราะห์
รากของวัตถุสร้างส่วนต่อประสาน อาร์เรย์และรูทดั้งเดิมสร้างนามแฝงประเภท อาร์เรย์ว่างใช้ไม่ทราบ [] และวัตถุว่างขยายบันทึก<สตริง, ไม่ทราบ>
ชื่อรูทมีค่าเริ่มต้นเป็นรูท ชื่อที่กำหนดเองตามกฎหมายจะยังคงอยู่ ในขณะที่ชื่อและคำสงวนที่ไม่ถูกต้องจะถูกทำให้เป็นมาตรฐานเป็นPascalCase
เอาต์พุตเป็นการประกาศ TypeScript แบบคงที่เท่านั้น: ไม่มีเครื่องมือตรวจสอบรันไทม์, parser, serializer, Zod/Yup/io-ts schema หรือไคลเอ็นต์ API

ข้อจำกัดและความเข้ากันได้

เครื่องมือนี้อนุมานประเภทจากข้อมูลตัวอย่าง ไม่ใช่จากสคีมาอย่างเป็นทางการหรือแหล่งที่มาของความจริงตามสัญญา ฟิลด์ที่ขาดหายไปจากตัวอย่างของคุณไม่สามารถเดาได้
อินพุตต้องเป็น JSON แบบเคร่งครัด ไม่รองรับ comments, trailing commas หรือ syntax เฉพาะของ JavaScript
โค้ด TypeScript ที่สร้างขึ้นไม่มีคำสั่ง export การดาวน์โหลดไฟล์ .ts เป็นคนละเรื่องกับการเพิ่มคีย์เวิร์ด export ที่โปรเจ็กต์ของคุณอาจต้องใช้
ผลลัพธ์คือโค้ด TypeScript แบบคงที่เท่านั้น มันไม่ได้สร้างเครื่องมือตรวจสอบรันไทม์, parsers, serializers, Zod schema หรือไคลเอนต์ API

ความเป็นส่วนตัวและความปลอดภัย

JSON เป็น TypeScript ทำงานภายในเบราว์เซอร์ของคุณ อินพุต JSON อาจคงอยู่เป็นฉบับร่างของเบราว์เซอร์ หากเปิดใช้พื้นที่ทำงานที่บันทึกไว้หรือการซิงค์ WebDAV อินพุต JSON ชื่อชนิดราก ค่าการแสดงเลขบรรทัดของอินพุต/เอาต์พุต และค่าการตัดบรรทัดอาจถูกบันทึกผ่านการซิงค์นั้น TypeScript ที่สร้างขึ้น ข้อผิดพลาดตรวจสอบ การเน้นบรรทัด/คอลัมน์ สถานะคัดลอก และประวัติย้อนกลับมาจากอินพุตปัจจุบัน และไม่ถูกบันทึกเป็นข้อมูลผลลัพธ์แยก การดาวน์โหลด JSON อินพุตและเอาต์พุต .ts จะถูกสร้างเฉพาะเมื่อคุณคลิกดาวน์โหลด เครื่องมือนี้ไม่อัปโหลดไฟล์หรือสร้างไฟล์แนบ

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

6

ขั้นตอนถัดไปสามารถทำต่อด้วยเครื่องมือที่เกี่ยวข้องเหล่านี้

เกี่ยวกับเรา

เกี่ยวกับเรา
ราคา

การประมวลผลของเครื่องมือทั้งหมดเกิดขึ้นภายในเบราว์เซอร์ของคุณแบบในเครื่อง