
Привет‚ меня зовут Алексей‚ и я хочу поделиться своим опытом создания классов в HTML-документе. В своей работе мне приходилось создавать классы Employee и Employee1‚ которые описывают объекты с различными свойствами в сфере трудовых отношений.
Первый класс ⎻ Employee
Класс Employee описывает работника с четырьмя свойствами⁚ имя‚ фамилия‚ ставка и количество дней работы. Методом класса я реализовал вычисление зарплаты‚ которая равна произведению ставки на количество дней работы.
class Employee {
constructor(name‚ surname‚ rate‚ daysWorked) {
this.name name;
this.surname surname;
this.rate rate;
this.daysWorked daysWorked;
}
calculateSalary {
return this.rate * this.daysWorked;
}
}
// Создание объекта класса Employee
const employee new Employee('Иван'‚ 'Иванов'‚ 1000‚ 20);
console.log(`Имя⁚ ${employee.name}`);
console.log(`Фамилия⁚ ${employee.surname}`);
console.log(`Ставка⁚ ${employee.rate}`);
console.log(`Количество дней работы⁚ ${employee.daysWorked}`);
console.log(`Заработная плата⁚ ${employee.calculateSalary}`);
Второй класс ⸺ Employee1
Второй класс Employee1 также описывает работника с аналогичными свойствами‚ но в нем я добавил методы для получения и изменения каждого свойства объекта‚ а также метод для вычисления заработной платы. В случае‚ если данные для расчета неполные‚ скрипт выводит ошибку в консоль.
class Employee1 {
constructor(name‚ surname‚ rate‚ daysWorked) {
this.name name;
this.surname surname;
this.rate rate;
this.daysWorked daysWorked;
}
get name {
return this._name;
}
set name(value) {
if (typeof value 'string') {
this._name value;
} else {
console.error('Ошибка ввода имени!');
}
}
get surname {
return this._surname;
}
set surname(value) {
if (typeof value 'string') {
this._surname value;
} else {
console.error('Ошибка ввода фамилии!');
}
}
get rate {
return this._rate;
}
set rate(value) {
if (typeof value 'number') {
this._rate value;
} else {
console.error('Ошибка ввода ставки!');
}
}
get daysWorked {
return this._daysWorked;
}
set daysWorked(value) {
if (typeof value 'number') {
this._daysWorked value;
} else {
console.error('Ошибка ввода количества дней работы!');
}
}
calculateSalary {
if (typeof this.rate 'number' nn typeof this.daysWorked 'number') {
return this.rate * this.daysWorked;
} else {
console.error('Не хватает данных для расчета заработной платы!');
}
}
}
// Создание объекта класса Employee1
const employee1 new Employee1('Петр'‚ 'Петров'‚ 1500‚ 25);
// Проверка методов получения и изменения свойств
console.log(`Имя⁚ ${employee1.name}`);
employee1.name 'Алексей';
console.log(`Имя⁚ ${employee1.name}`);
console.log(`Фамилия⁚ ${employee1.surname}`);
employee1.surname 'Сидоров';
console.log(`Фамилия⁚ ${employee1.surname}`);
console.log(`Ставка⁚ ${employee1.rate}`);
employee1.rate 1200;
console.log(`Ставка⁚ ${employee1.rate}`);
console.log(`Количество дней работы⁚ ${employee1.daysWorked}`);
employee1.daysWorked 22;
console.log(`Количество дней работы⁚ ${employee1.daysWorked}`);
console.log(`Заработная плата⁚ ${employee1.calculateSalary}`);
Таким образом‚ я рассказал о своем опыте создания классов Employee и Employee1 в HTML-документе. Я использовал различные свойства и методы для хранения и обработки данных‚ а также выводил информацию в консоль. Данный опыт помог мне лучше разобраться в использовании классов и их возможностях.