Avatar ·

如何在TypeScript中正确声明对象数组:新手完整指南

大家好!我刚开始学习TypeScript,在声明对象数组时遇到了问题。我试图为用户列表编写一个简单的功能,但TypeScript不断报错。 这是我的代码: ```typescript const users = [ { name: "伊万", age: 25 }, { name: "玛丽亚", age: 30 }, { name: "彼得", age: 28 } ]; function getUserNames(users: ???) { return users.map(user => user.name); } ``` 我尝试了不同的方式:`users: Array`、`users: any[]`,但要么TypeScript报错,要么编辑器的自动补全丢失。例如,当我写`users: any[]`时,访问`user.name`时编辑器不会提示对象的属性,我可能会不小心写一个不存在的字段。 另一个问题是:有时我希望数组中的对象具有不同的必填和可选字段。例如,部分用户可能有`phone`字段,而其他用户没有。 请告诉我如何在TypeScript中正确声明对象数组。