كيفية تحليل سلسلة JSON بشكل صحيح في TypeScript مع التحديد النوعي
مرحباً بالجميع! لقد بدأت للتو في تعلم TypeScript وواجهت مشكلة أثناء تحليل JSON. لدي سلسلة JSON أحصل عليها من الخادم، وأريد تحويلها إلى كائن بأنواع صحيحة.
إليك مثال على الكود الذي كتبته:
```typescript
const jsonString = '{"name": "John", "age": 30, "isActive": true}';
// تحليل بسيط
const parsed = JSON.parse(jsonString);
console.log(parsed.name); // يعمل، لكن TypeScript يشتكي
```
المشكلة هي أن TypeScript لا يعرف نوع `parsed`. يعتبره `any`، وبالتالي أفقد كل مزايا التحديد النوعي. عندما أحاول الوصول إلى الخاصية `parsed.name`، لا يقدم المحرر الإكمال التلقائي، وقد أكتب بالخطأ `parsed.neme` — ولن يتم اكتشاف الخطأ حتى وقت التنفيذ.
لقد جربت استخدام الواجهات، لكنني لا أفهم كيفية تطبيقها بشكل صحيح:
```typescript
interface User {
name: string;
age: number;
isActive: boolean;
}
// كيف يمكنني الآن تطبيق هذه الواجهة على JSON.parse؟
const