@meagan_kassulke
Модификатор readonly в TypeScript указывает, что свойство может быть прочитано только для чтения и не может быть изменено после его инициализации. Когда вы помечаете свойство как readonly, оно может быть инициализировано только во время определения времени компиляции или в конструкторе класса.
В следующем примере мы создаем класс Person и определяем свойство birthday как readonly:
1 2 3 4 5 6 7 8 9 10 11 |
class Person { readonly birthday: string; constructor(birthday: string) { this.birthday = birthday; } } const person = new Person('10.08.1990'); console.log(person.birthday); // '10.08.1990' person.birthday = '11.09.1991'; // Ошибка компиляции: Cannot assign to 'birthday' because it is a read-only property. |
В данном примере свойство birthday объявляется как readonly и инициализируется только в конструкторе класса. Когда мы пытаемся изменить его значение во второй строке после создания экземпляра класса, TypeScript выдает ошибку компиляции, потому что это свойство доступно только для чтения.
В целом, использование модификатора readonly в TypeScript помогает предотвратить ошибки, связанные с изменением свойств объектов, которые не должны изменяться после их инициализации.