/
Программирование
/
Курс Typescript
/

Свойства параметров

Typescript: Свойства параметров

Заполнение свойств из параметров конструктора частая задача в работе с классами. Поэтому в TypeScript добавили специальный синтаксис, который позволяет делать это автоматически:

class SomeClass {
  constructor(public one: number, private two: string) {}

  get three(): string {
    return `${this.one} ${this.two}`;
  }
}

Этот код делает то же самое, что и этот:

class SomeClass {
    public one: number;

    private two: string;

    constructor(one: number, two: string) {
      this.one = one;
      this.two = two;
    }

    get three(): string {
        return `${this.one} ${this.two}`;
    }
  }

Новый синтаксис позволяет не дублировать код заполнения свойств из параметров и делает его более лаконичным. Если в конструкторе есть какая-то логика, то свойства все равно нужно заполнять вручную.

Задание

Реализуйте класс CustomFile, в конструктор которого передается имя файла и размер в байтах. Внутри класса определите метод toString(), который должен вернуть форматированную строку в формате <file-name> (<size> bytes). Используйте свойства параметров для заполнения свойств класса.

const file = new CustomFile('open-world.jpeg', 1000);
console.log(file.toString()); // open-world.jpeg (1000 bytes)

Полезное

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются