如何在 TypeScript 中检查数组是否包含字符串?
你好!我是 TypeScript(以及 JavaScript 整体)的新手,遇到了一个问题。
我有一个字符串数组,需要检查其中是否包含某个特定值。这看起来应该很简单,但我不太清楚如何在 TypeScript 中正确实现,尤其是考虑到严格类型检查。
以下是我的代码示例:
```typescript
const fruits: string[] = ['apple', 'banana', 'orange'];
const search: string = 'banana';
// 我尝试了这样:
if (fruits.indexOf(search) !== -1) {
console.log('找到了!');
}
// 以及这样:
if (fruits.includes(search)) {
console.log('找到了!');
}
```
两种方法都能工作,但我听说 `includes` 是更现代的方法。不过我不确定在 TypeScript 中哪种更推荐,以及是否存在什么陷阱。
另外,我想确保代码能区分大小写(case-sensitive),并且如果数组突然变成 `undefined` 或 `null` 时不会出现类型错误。
也许还有其他...