معاملات الأنواع الافتراضية
وفّروا أنواعًا بديلة عند عدم تقديم أي وسيطة
معاملات الأنواع الافتراضية درس مجاني في TypeScript Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في TypeScript Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
مرحبًا
الصياغة الافتراضية
interface Container<T = string> {
value: T;
}
const c: Container = { value: 'hello' }; // T defaults to string
const n: Container<number> = { value: 42 };القيم الافتراضية في الدوال العامة
function createList<T = string>(): T[] { return []; }
const list = createList(); // T is string by defaultالقيم الافتراضية مع القيود
interface Event<T extends object = Record<string, unknown>> {
type: string;
payload: T;
}القيم الافتراضية في المكونات الشبيهة بمكونات React
interface SelectProps<T = string> {
options: T[];
value: T;
onChange: (val: T) => void;
}قيم افتراضية متعددة
type Pair<A = string, B = number> = { first: A; second: B };
const p: Pair = { first: 'hello', second: 42 }; // A=string, B=numberتحتاج معاملات الأنواع اللاحقة إلى قيم افتراضية أيضًا
type Map<K = string, V = unknown> = Record<K extends string ? K : string, V>;
const m: Map = {}; // K=string, V=unknown by defaultمتى يتجاهل TypeScript القيمة الافتراضية
function wrap<T = string>(val: T): T { return val; }
const n = wrap(42); // T is number, not string (inferred)التجاوزات الصريحة
interface Box<T = string> { item: T; }
const numBox: Box<number> = { item: 100 }; // T explicitly numberالقيم الافتراضية في الأنواع العامة للفئات
class Stack<T = unknown> {
private items: T[] = [];
push(item: T) { this.items.push(item); }
pop(): T | undefined { return this.items.pop(); }
}تجعل القيم الافتراضية المكتبات العامة أسهل استخدامًا
فحص سريع
مراجعة
الأسئلة الشائعة
هل درس «معاملات الأنواع الافتراضية» مجاني؟
نعم — نص درس «معاملات الأنواع الافتراضية» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة TypeScript Academy، انتقل إلى CoddyKit PRO. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
ماذا ستتعلم في «معاملات الأنواع الافتراضية»؟
وفّروا أنواعًا بديلة عند عدم تقديم أي وسيطة تتمرن على TypeScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ TypeScript Academy؟
لا تُشترط خبرة سابقة. TypeScript Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «معاملات الأنواع الافتراضية»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس TypeScript Academy هذا؟
نعم. كل درس في TypeScript Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- الدوال العامة: معاملات الأنواع
- الواجهات العامة والأسماء المستعارة للأنواع
- قيود الأنواع العامة باستخدام extends
- معاملات الأنواع الافتراضية