نوع any ولماذا يجب تجنّبه
افهم نوع any ومتى يُفقد TypeScript غرضها
نوع any ولماذا يجب تجنّبه درس مجاني في TypeScript Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في TypeScript Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
مرحبًا
ما الذي يفعله any
let x: any = 5;
x = 'hello'; // OK
x = true; // OK
x.nonExistent(); // No error — but crashes at runtime!كيف ينتشر any
let data: any = fetchData();
let name: string = data.name; // name is now effectively anyمتى تستنتج TypeScript النوع any
let value; // inferred as any — dangerous!
value = 42;
value = 'hello';
// Fix:
let value2: number;العلامة noImplicitAny
// tsconfig.json
{ "compilerOptions": { "noImplicitAny": true } }
// Now this is an error:
function process(data) { } // Error: Parameter has implicit any typeالاستخدامات المشروعة لـ any
// Acceptable: narrow scope, clearly documented
function parseJson(raw: string): any {
return JSON.parse(raw); // validate with Zod afterwards
}تأكيدات الأنواع كبديل
const raw = JSON.parse(text) as { name: string; age: number };
console.log(raw.name); // typed correctlyany مقابل object
let o: object = { x: 1 };
// o.x; // Error — object doesn't allow property access
let a: any = { x: 1 };
a.x; // OK — but no safetyيعطل any الإكمال التلقائي
استبدال any بـ unknown
let input: unknown = getInput();
// input.toUpperCase(); // Error — must narrow first
if (typeof input === 'string') {
console.log(input.toUpperCase()); // OK
}ميزانية any
تحقق سريع
مراجعة
الأسئلة الشائعة
هل درس «نوع any ولماذا يجب تجنّبه» مجاني؟
نعم — نص درس «نوع any ولماذا يجب تجنّبه» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة TypeScript Academy، انتقل إلى CoddyKit PRO. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
ماذا ستتعلم في «نوع any ولماذا يجب تجنّبه»؟
افهم نوع any ومتى يُفقد TypeScript غرضها تتمرن على TypeScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ TypeScript Academy؟
لا تُشترط خبرة سابقة. TypeScript Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «نوع any ولماذا يجب تجنّبه»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس TypeScript Academy هذا؟
نعم. كل درس في TypeScript Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- الأنواع البدائية: string وnumber وboolean
- نوع any ولماذا يجب تجنّبه
- unknown مقابل any: الخيار الأكثر أماناً
- null وundefined والتحقق الصارم من null