[타입스크립트] readonly

Moon·2023년 7월 28일
post-thumbnail

타입스크립트에서 readonly는 클래스의 속성이나 변수가 한 번 초기화되면 변경되지 않아야 함을 나타내는 접근 제한자이다.

클래스에서 readonly를 사용하면 해당 속성은 선언 시 또는 생성자 내에서 초기화할 수 있다. 그러나 그 이후에는 해당 속성의 값을 변경할 수 없습니다. 예를 들어:

class Person {
  readonly name: string;

  constructor(name: string) {
    this.name = name;
  }
}

let john = new Person('John');
john.name = 'Jane';  // 에러, name 속성은 읽기 전용입니다.

또한 readonly는 타입스크립트의 기본 타입에도 사용될 수 있습니다. 예를 들어, readonly 배열은 변경할 수 없는 배열이다:

let numbers: readonly number[] = [1, 2, 3];
numbers.push(4);  // 에러, numbers 배열은 읽기 전용입니다.

이렇게 readonly를 사용하면 코드의 안전성을 높일 수 있다. 즉, 의도치 않게 변경되면 안 되는 데이터가 변경되는 것을 방지할 수 있다.

profile
FE moon

0개의 댓글