النتائج مقدَّمة لأغراض إعلامية فقط وقد تحتوي على أخطاء. يُرجى التحقق من المعلومات المهمة بشكل مستقل. استخدام هذه الأداة على مسؤوليتك الخاصة.
ماذا تفعل هذه الأداة
تقرأ أداة تحويل JSON إلى TypeScript كائن JSON نموذجيًا وتولّد واجهات TypeScript (interfaces) مطابقة له. يحصل كل كائن متداخل على واجهة مستقلة باسمها، وتحصل كل خاصية على نوع مستنتَج من قيمتها: string أو number أو boolean أو null أو نوع مصفوفة أو واجهة أخرى.
حدّد اسم الواجهة في حقل اسم الواجهة. وإذا كان JSON مصفوفة، تُستنتج الأنواع من عنصرها الأول، ويُضاف نوع قائمة مثل type UserList = User[];.
متى تستخدمها
- تحديد أنواع استجابة API تستدعيها من واجهة أمامية مكتوبة بـTypeScript أو من خدمة Node.js.
- بدء نموذج بيانات من حمولة حقيقية بدلًا من كتابة الواجهات يدويًا.
- توثيق بنية حمولة webhook أو حدث (event) لفريقك.
مثال عملي
المدخلات
{"id": 1, "name": "Ana", "active": true, "address": {"city": "Lisbon"}, "tags": ["admin"]}
المخرجات
interface Address {
city: string;
}
interface User {
id: number;
name: string;
active: boolean;
address: Address;
tags: string[];
}أسئلة حول هذه الأداة
هل تُكتشف الخصائص الاختيارية؟
لا. تُستنتج الأنواع من عينة واحدة، لذا فإن الخاصية الغائبة عن تلك العينة تغيب أيضًا عن الواجهة. أضف ? إلى الخصائص التي لا تكون موجودة دائمًا.
ما النوع الذي تحصل عليه القيمة null؟
القيمة التي تكون null في العينة تحصل على النوع null. غيّره إلى اتحاد (union) مثل string | null إذا كان الحقل قد يحمل قيمة.
ماذا يحدث مع المصفوفات ذات القيم المختلطة؟
يصبح نوع العنصر اتحادًا، مثل (string | number)[]. وتصبح المصفوفة الفارغة unknown[]، لأنه لا يوجد ما يُستنتج منه النوع.
هل هذه الأداة مجانية؟
نعم، إنها مجانية. دون تسجيل أو بريد إلكتروني. تظهر النتيجة في هذه الصفحة.
كيف أحصل على النتيجة؟
استخدم الأداة في هذه الصفحة. تظهر النتيجة هنا دون الحاجة إلى إرسالها بالبريد الإلكتروني.