기본타입 외의 것들
let
const
read only
변성
불변성
불변성
readonly 사용사례
class Person {
readonly name: string;
readonly age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
}
const person = new Person('Spartan', 30);
console.log(person.name); // 출력: 'Spartan'
console.log(person.age); // 출력: 30
person.name = 'Jane'; // 에러: 'name'은 readonly 속성이므로 다시 할당할 수 없다.
person.age = 25; // 에러: 'age'은 readonly 속성이므로 다시 할당할 수 없다.
any
unknown
union
자바의 Object
any와 비슷하나 Type Assertion이라는 속성이 있음
여러 타입 중 하나를 가질 수 있는 변수를 선언할 때 사용
unknown 사용사례
let unknownValue: unknown = '나는 문자열이지롱!';
let stringValue: string;
stringValue = unknownValue; // 에러 발생! unknownValue가 string임이 보장이 안되기 때문!
stringValue = unknownValue as string; // Type Assertion(타입 단언)
let unknownValue: unknown = '나는 문자열이지롱!';
let stringValue: string;
if (typeof unknownValue === 'string') {
stringValue = unknownValue;
console.log('unknownValue는 문자열이네요~');
} else {
console.log('unknownValue는 문자열이 아니었습니다~');
}
typeof
키워드를 이용하여 타입 체크를 미리한 후 unknown 타입의 변수를 string 타입의 변수에 할당할 수 있다.
Last updated