Avatar ·

كيفية تعريف نوع يقبل null أو undefined في TypeScript؟

مرحبًا! بدأت للتو في تعلم TypeScript وواجهت مشكلة. لدي دالة يجب أن تستقبل رقمًا، لكن في بعض الأحيان أريد تمرير null أو عدم تمرير أي شيء (undefined). في JavaScript العادي يعمل هذا دون مشاكل، لكن TypeScript يشتكي. إليك مثال على الكود الخاص بي: ```typescript function greetUser(age: number) { console.log(`العمر: ${age}`); } // أريد تمرير null إذا كان العمر غير معروف greetUser(null); // خطأ: Argument of type 'null' is not assignable to parameter of type 'number'. // أو عدم تمرير الوسيط على الإطلاق greetUser(); // خطأ: Expected 1 arguments, but got 0. ``` حاولت استخدام `age: number | null`، لكن الدالة لا تسمح بتمرير undefined. وإذا كتبت `age: number | undefined`، فلا تعمل مع null. كيف يمكنني جعل الدالة تستقبل رقمًا و null و undefined بشكل صحيح؟ هل يوجد نوع خاص في TypeScript لهذا؟ رأيت في التوثيق شيئًا عن `?` قبل النقطتين الرأسيتين.