تخطي إلى المحتوى

JSON إلى TypeScript

يحوّل JSON إلى TypeScript عينات JSON محليًا إلى واجهات TypeScript وtype aliases، مع حقول اختيارية واستدلال union/null/Date وتسمية الجذر والنسخ أو التنزيل بصيغة .ts.

JSON

الأحرف

0 / 50,000

TypeScript

JSON إلى TypeScript

بداية سريعة

1
الصق عينة JSON صالحة في المحرر الأيسر.
2
عيّن اسم نوع جذريًا مثل ApiResponse عند الحاجة.
3
راجع TypeScript على اليمين: الكائنات تصبح interface؛ المصفوفات أو القيم البدائية تصبح type alias.
4
انسخ أو نزّل ملف .ts الناتج؛ يمكن للوحة الإدخال التعامل مع عينة JSON أيضًا.

سيناريوهات شائعة

حوّل استجابات API الحقيقية بسرعة إلى أنواع TypeScript جاهزة للاستخدام في صفحات الواجهة الأمامية أو عملاء SDK أو أثناء الربط مع الواجهة الخلفية.

قبل تثبيت العقد النهائي، استخدم عينات JSON لمراجعة استنتاج الحقول الاختيارية والقيم null وأنواع الاتحاد.

حوّل بيانات JSON التجريبية إلى تعريفات أنواع سريعة للـ fixtures أو قصص Storybook أو النماذج الأولية.

عندما تتغيّر بنية استجابة الخلفية، استخدم أحدث عينة JSON لمراجعة ما إذا كانت التصريحات المتداخلة مثل User وMeta تحتاج إلى تحديث.

نصائح الاستخدام

استخدم عينة تمثيلية من JSON. هذا هو الاستدلال المستند إلى العينة، لذا لا يمكن أن تظهر الحقول أو القيم المفقودة في المخرجات.
المصفوفات الفارغة تصبح unknown[]، والكائنات الفارغة تصبح interfaces تمتد من Record<string, unknown> حتى توفر بيانات أغنى.
تتم تسوية أسماء التصاريح المتداخلة من أسماء الخصائص، لذلك يفضل الإخراج الجديد أسماء مثل User أو Meta بدلاً من الصيغ القديمة ذات بادئة الجذر.
لا يعمل التوليد إلا مع JSON صالح. أصلح أخطاء الصياغة أولاً؛ يعرض المحرر السطر والعمود عند فشل التحليل.
أسماء الجذر المخصصة الصالحة تُحفظ كما هي، أما الأسماء غير الصالحة فتُسوّى إلى معرف PascalCase صالح في TypeScript.

اكتب حدود الاستدلال

يستنتج المولد من العينة الحالية، وليس من مخطط JSON أو Open API أو GraphQL أو الملفات أو عناوين URL أو خطوط JSON أو العينات المجمعة.
تقوم المصفوفات بدمج أشكال العناصر التي تمت ملاحظتها: تصبح الحقول المفقودة من بعض العناصر اختيارية، وتصبح القيم الخالية أو المختلطة اتحادات.
قد يتم استنتاج السلاسل المشابهة للتاريخ على أنها "تاريخ"، لكن قيمة JSON في وقت التشغيل تظل سلسلة ما لم تقم التعليمات البرمجية الخاصة بك بتحليلها.
تولد جذور الكائنات واجهة؛ تولد المصفوفات والجذور البدائية أسماء مستعارة للنوع؛ تستخدم المصفوفات الفارغة غير معروف [] وتمتد الكائنات الفارغة إلى السجل <string، غير معروف>.
اسم الجذر الافتراضي هو الجذر. يتم الاحتفاظ بالأسماء المخصصة القانونية، بينما تتم تسوية الأسماء غير الصالحة والكلمات المحجوزة إلىPascalCase.
الإخراج عبارة عن إعلانات TypeScript ثابتة فقط: لا يوجد مدقق وقت التشغيل، أو محلل، أو مُسلسل، أو مخطط Zod/Yup/io-ts، أو عميل API.

القيود والتوافقية

تستنتج هذه الأداة الأنواع من بيانات العينة، وليس من مخطط رسمي أو مصدر حقيقي للعقد. لا يمكن تخمين الحقول المفقودة من العينة الخاصة بك.
يجب أن يكون الإدخال JSON صارماً. التعليقات والفواصل اللاحقة وبقية صياغات JavaScript فقط غير مدعومة.
لا يتضمن كود TypeScript الناتج عبارات export. تنزيل ملف .ts منفصل عن إضافة كلمة export التي قد يتطلبها مشروعك.
والنتيجة هي رمز TypeScript ثابت فقط. لا يقوم بإنشاء أدوات التحقق من صحة وقت التشغيل أو الموزعين أو المسلسلات أو مخططات Zod أو عملاء API.

الخصوصية والأمان

يعمل تحويل JSON إلى TypeScript محليًا في المتصفح. قد يبقى إدخال JSON كمسودة في المتصفح. إذا كانت مساحة عمل محفوظة أو مزامنة WebDAV مفعلة، فقد يُحفظ إدخال JSON واسم النوع الجذري وتفضيلات أرقام أسطر الإدخال/الإخراج وتفضيلات التفاف الأسطر عبر تلك المزامنة. TypeScript المُنشأ وأخطاء التحقق وتمييز السطر/العمود وحالة النسخ وسجل التراجع مشتقة من الإدخال الحالي ولا تُحفظ كبيانات نتيجة منفصلة. لا تُنشأ تنزيلات JSON الإدخال ومخرجات .ts إلا عند النقر على Download. لا ترفع هذه الأداة ملفات ولا تنشئ مرفقات.

أسئلة شائعة

6

تابع الخطوة التالية باستخدام هذه الأدوات ذات الصلة.

تتم كل معالجة الأدوات محليًا داخل متصفحك.