생성&사용
- js로 컴파일하면 사라짐
- 작성 중인 코드에 대한 더 많은 정보를 타입스크립트에 제공하기 위한 용도
- 인터페이스의 변수명에 ? 를 붙히면 null 값을 허용한다.
- 변수명 앞에 readonly를 붙혀 읽기전용 프로퍼티로 지정
- 객체 생성시 할당된 프로퍼티의 값을 바꿀 수 없다.
interface Dog {
readonly name: string;
age: number;
color?: string;
}
function convertToDog(name:string, age:number):Dog {
return {name: name, age: age};
}
const dog01 = convertToDog('coco', 4);
console.log(`name: ${dog01.name}`);
console.log(`age: ${dog01.age}`);
-> name: coco
-> age: 4
dog01.name = 'koko';
//오류
//Cannot assign to 'name' because it is a read-only property.