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 返回的数组,那里数组的类型声明了