let divBox = {
color:'red',
width:100
}
<aside> 💡 정답 타입 별칭과 인터페이스는 일반 변수와 차별화를 하기 위해서 관습적으로 대문자를 사용한다. 정답에서는 타입 별칭과 인터페이스의 이름을 Style로 사용했다.
1) 타입별칭 타입 지정 방법
type Style ={
color:string,
width:number
}
let divBox : Style= {
color:'red',
width:100
}
2) 인터페이스 타입 지정 방법
interface Style{
color:string,
width:number,
}
let divBox : Style= {
color:'red',
width:100
}
</aside>
interface Info{
name: string, //(a)
age: number, //(b)
weight:number, //(c)
marriage: boolean, //(d)
favoriteFood : string[] //(e)
}
let person:Info= {
name: '선은혜',
marriage :false,
favoriteFood:['chicken','cake','pizza']
}
<aside>
💡 정답: (b),(c)
변수 person
은 인터페이스 Info
라고 지정해주었으므로 Info가 가지고 있는 속성 개수를 일치시켜야한다. 따라서, 변수 person
에는 age와 weight 가 들어가야한다. 혹은, Info
인터페이스 부분에 age? :number , weight? :number 라고 옵션 속성을 표시해주어야한다.
</aside>
interface Taste {
sweet: boolean;
}
interface Shape {
color: string;
}
interface Apple extends Shape, Taste {
length: number;
}
let apple = {} as Apple;
/* 빈칸 */
apple.name = ''
apple.name = ‘Apple’;
apple.length = 20;
apple.sweet = 'No';
apple.color = ‘blue’;
apple[1] = ‘sale’;