Avatar ·

كيف تتحقق مما إذا كانت المصفوفة تحتوي على سلسلة نصية في TypeScript؟

مرحباً بالجميع! أنا مبتدئ في TypeScript (كنت أكتب سابقاً بلغة JavaScript العادية) وواجهت مشكلة عند التحقق من وجود سلسلة نصية في مصفوفة. لدي مصفوفة من السلاسل النصية: ```typescript let fruits: string[] = ['apple', 'banana', 'orange']; ``` وأحتاج إلى التحقق مما إذا كانت تحتوي مثلاً على 'banana'. في JavaScript كنت سأكتب ببساطة: ```javascript if (fruits.indexOf('banana') !== -1) { ... } ``` أو ```javascript if (fruits.includes('banana')) { ... } ``` لكن في TypeScript أحصل على أخطاء غريبة في الأنواع. عندما أكتب: ```typescript if (fruits.includes('banana')) { console.log('Found!'); } ``` كل شيء يعمل، ولكن عندما أحاول استخدام indexOf، يشتكي المترجم: "Argument of type 'string' is not assignable to parameter of type 'never'". أنا لا أفهم مطلقاً ما يعنيه هذا. ربما هناك ميزات خاصة في TypeScript للعمل مع المصفوفات؟ أم أنني أعلنت المصفوفة بشكل غير صحيح؟ كما حاولت التحقق من مصفوفة تأتي من API، وكان نوع المصفوفة معلناً