班级员工

时间:2019-05-25 12:29:55

标签: javascript arrays typescript object ecmascript-6

我是Angular的新手,正在使用angular编写代码,并且正在观看视频教程。 我注意到我的代码中有一些内容,我无法理解它的工作原理。

我想知道这段代码是什么意思 组件上的“雇员:雇员[]”。

这是我的模型代码:

export class Employee{
    id: number;
    name: string;
    gender: string;
    phoneNumber: number;
    contactPreference: string;
    dateOfBirth: Date;
    department: string;
    isActive: boolean;
    photoPath: string;
}

这是我的组件代码:

employees: Employee[]=[{
    id: 1,
    name: 'Kennedy',
    gender: 'Male',
    phoneNumber: 123,
    contactPreference: 'Email',
    dateOfBirth: new Date('10/25/2019'),
    department: 'IT',
    isActive: true,
    photoPath: 'http://www.landscapingbydesign.com.au/wp-content/uploads/2018/11/img-person-placeholder-300x300.jpg'
},

提前谢谢

3 个答案:

答案 0 :(得分:0)

employeesEmployee个数组。

答案 1 :(得分:0)

employees: Employee[]=[{
    id: 1,
    name: 'Kennedy',
    gender: 'Male',
    phoneNumber: 123,
    contactPreference: 'Email',
    dateOfBirth: new Date('10/25/2019'),
    department: 'IT',
    isActive: true,
    photoPath: 'http://www.landscapingbydesign.com.au/wp-content/uploads/2018/11/img-person-placeholder-300x300.jpg'
    },

这意味着雇员是一个类变量。等于一个类型为Employee的数组,它正在添加对象的初始值。

如您所见,您有一个Employee模型。这定义了对象的外观。例如:

您的模型定义了id:数字,名称:字符串;

如果将id作为字符串添加。 Ts编译器​​将给出错误。这将帮助您避免将来的错误。与普通js中一样,此代码可以运行,但在运行时将失败。

我希望这是有道理的。

答案 2 :(得分:0)

语法:

name: Type[]

表示您有Type个项目数组。就像猫鼬的模式一样:

employees: [Employee]

除了语法略有不同-类似于Swift等强类型语言。

添加不同类型时,它将引发错误。这意味着如果您尝试这样做:

data: object[];
data.push("A String");

TypeScript编译器将引发错误:

  

错误TS2345:无法将类型“ A String”的参数分配给类型“ object”的参数。