У меня есть массив объектов. Я пытаюсь не повторять свои функции на каждом объекте.
Во-первых, правильно ли я реализовал свой массив интерфейса?
Во-вторых, как мне правильно реализовать свою функцию для каждого объекта ? Не был уверен, нужно ли мне выполнять вызов или связывать, когда я назначаю эту функцию каждому объекту. Или я совершенно не так делаю.
//interfaces
export interface IEmployee{
id: number;
name: string;
hourly: number;
hours_this_week: number;
paycheck: (() => number);
}
// my function
const calculatePayThisWeek = (): number => {
return this.hourly * this.hours_this_week;
}
export getEmployees = (): IEmployee[] => {
return [
{
id: 1,
name: 'John Doe',
hourly: 10,
hours_this_week: 5,
paycheck: calculatePayThisWeek
},
{
id: 2,
name: 'Jane Doe',
hourly: 15,
hours_this_week: 8,
paycheck: calculatePayThisWeek
}
]
}