إدخال JSON

مخرجات TypeScript

ما هو محوّل JSON إلى TypeScript؟

تُضيف TypeScript أنواعاً ثابتة إلى JavaScript. عند العمل مع JSON من واجهة برمجية أو ملف إعدادات، كثيراً ما تحتاج إلى واجهة أو نوع يصف البنية. كتابتها يدوياً مرهقة. تستخرج هذه الأداة واجهات TypeScript من بيانات JSON الخاصة بك: تحلل المفاتيح والقيم وتولد تعريفات الأنواع المناسبة.

الصق JSON واحصل على TypeScript. تعمل الأداة في المتصفح. لا يُرسل أي شيء إلى الخادم. يتوافق المخرج مع بنية TypeScript القياسية.

كيفية استخدام هذه الأداة

1

الصق JSON

الصق JSON الخاص بك في المحرر الأيسر أو ارفع ملفاً. استخدم تحميل مثال للحصول على بيانات نموذجية. يستخرج المولد الأنواع من البنية. استخدم بيانات تمثيلية تُظهر جميع الحقول التي تهمك.

2

مراجعة الواجهات

تعرض اللوحة اليمنى الواجهات المُولَّدة. تمتلك الكائنات المتداخلة واجهاتها الخاصة. تُكتب المصفوفات كـ Type[]. قد تستخدم الحقول الاختيارية ? وفق الإعداد.

3

نسخ أو تنزيل

استخدم <strong>نسخ</strong> أو <strong>تنزيل</strong> للحصول على TypeScript. الصقه في مشروعك. قد تحتاج إلى ضبط الأسماء أو إضافة أنواع جنيسة أو تصحيح الحقول الاختيارية. للتحقق من JSON أولاً، استخدم التحقق من JSON.

متى يكون تحويل JSON إلى TypeScript مفيداً

عند دمج واجهة برمجية، كثيراً ما تحتاج إلى أنواع لحمولة الاستجابة. لصق استجابة نموذجية هنا يوفر واجهات يمكنك وضعها في مشروع Angular أو React أو Node. ملفات الإعداد وحمولات Webhook ووثائق قواعد البيانات تستفيد من المعالجة ذاتها. كتابة الواجهات يدوياً للبنى المتداخلة المعقدة عرضة للأخطاء؛ تستخرج هذه الأداة البنية من مثالك. للتوليد المبني على مخطط، استخدم مولد مخطط JSON وأدوات مثل quicktype.

أمثلة JSON إلى TypeScript

إليك مثالاً على توليد واجهات TypeScript من كائن JSON.

مثال: سجل مشترك

إدخال JSON:

إدخال JSON

مخرجات TypeScript المُولَّدة:

مخرجات TypeScript

القيود

يستخرج المولد الأنواع من العينة. إذا كان الحقل قد يكون <code>string | number</code> لكن عينتك تحتوي نصوصاً فقط، فسيكون النوع <code>string</code>. إذا كانت المصفوفات قد تكون فارغة، فقد يكون نوع العنصر <code>unknown</code>. راجع المخرجات وعدّلها. للتوليد المبني على مخطط، استخدم مولد مخطط JSON وأداة مثل quicktype.

الأسئلة الشائعة

هل تُوسَم الحقول الاختيارية؟

يعتمد ذلك على الإعداد. تُوسم بعض المولدات جميع الحقول كإلزامية؛ وتستنتج أخرى من العينة. افحص المخرجات وأضف ? حيثما يلزم.

ماذا عن أنواع union؟

إذا كان للمفتاح ذاته أنواع مختلفة في كائنات مختلفة، قد يستخدم المولد string | number أو union مشابهاً، أو قد يختار نوعاً واحداً. افحص المخرجات.

هل يتم إرسال بياناتي إلى أي مكان؟

لا. تتم عملية التوليد في متصفحك.

هل يمكنني توليد أنواع لغات أخرى؟

تُولِّد هذه الأداة TypeScript فقط. يحتوي الموقع على محوّلات لـ C# وJava وPython وغيرها.

ماذا عن التعدادات (enums)؟

إذا كان الحقل يحمل مجموعة ثابتة من قيم النصوص، قد يُولِّد المولد نوع union مثل "a" | "b" | "c". للتعدادات الصريحة، عدّل المخرجات.

أدوات ذات صلة

لـ TypeScript، انظر typescriptlang.org وكائنات TypeScript. لـ JSON، انظر json.org وMDN JSON. للتوليد من مخطط إلى كود، انظر quicktype. RFC 8259 (مواصفة JSON).