Avatar ·

كيفية تعريف مصفوفة تحتوي على عناصر من أنواع مختلفة في TypeScript؟

مرحبًا بالجميع! لقد بدأت للتو في تعلم TypeScript وواجهت مشكلة. في JavaScript العادي، يمكنني بسهولة إنشاء مصفوفة تحتوي على عناصر من أنواع مختلفة، على سبيل المثال: ```javascript const data = [1, "hello", true, { name: "John" }]; ``` ولكن عندما أحاول فعل الشيء نفسه في TypeScript، يشتكي المترجم أو يستنتج نوعًا لا يناسبني. حاولت تحديد نوع المصفوفة بشكل صريح: ```typescript const data: Array = [1, "hello", true]; ``` لكن هذا لا يعمل — يقول TypeScript إن Array يتطلب تحديد نوع العناصر. ثم جربت `Array`: ```typescript const data: Array = [1, "hello", true]; ``` يبدو أن هذا يعمل، لكنني سمعت أن استخدام `any` ممارسة سيئة لأنه يفقد أمان النوع. أحتاج إلى تعريف مصفوفة يمكن أن تحتوي فقط على strings و numbers و booleans (أو أنواع محددة معينة). كيف يمكنني فعل ذلك بشكل صحيح؟ هل هناك طريقة لتحديد أن المصفوفة يمكن أن تحتوي على عناصر من أنواع معروفة مسبقًا؟