如何在 TypeScript 中创建空类型化数组?
大家好!我刚开始在 JavaScript 之后学习 TypeScript,在创建空数组时遇到了问题。在 JavaScript 中,我经常这样做:
```javascript
let items = [];
```
然后通过 push 添加元素。但在 TypeScript 中,当我尝试同样操作时遇到了错误:
```typescript
let items = [];
items.push('hello'); // Error: Argument of type 'string' is not assignable to parameter of type 'never'
```
我理解 TypeScript 推断类型为 `never[]`,因为数组是空的,编译器不知道其中会有什么元素。但如何正确声明一个空数组,使其后续可以包含例如字符串或特定类型的对象?
我尝试了几种方式:
```typescript
let items: string[] = []; // 可行,但仅适用于字符串
let items: Array = []; // 也可行
```
但如果我有复杂类型呢?例如,包含 User 接口对象的数组?或者包含不同类型(联合类型)的数组?如何