인터페이스는 자바스크립트 코드로 컴파일되지않는다.
user: object;
를 사용하여 우리가 객체안에 key값을 찾는것처럼 user.name을 console.log에 찍어보면
user.name은 없는 속성이라고 나온다.
object에는 name이 없기때문이다.
interface를 사용하여 중복된값 타입지정하기
인터페이스 선택속성 ?
interface를 사용할땐 interface안에 있는 모든 key값을 사용하여 작성해야한다.
이때 일부객체는 몇몇개의 프로퍼티를 작성하지않아도 될때 선택속성 ? 물음표를 사용한다.
readonly
const와 비슷하게 한번 초기화된 값은 바꿀 수 없게 지정한다.
여러개의 KEY값을 주고 싶을떄 [ ] 대괄호
아래코드에서 필요한 모든 key값을 대괄호 없이 입력하게되면
1?: number;
2?: number;
3?: number;
생략...
이런식으로 모든 key값을 지정해주고 해당값들은 선택속성으로 지정해줘야한다(모든 값을 쓰지않기때문에)
이럴떈 [ ]대괄호에 필요한 key값을 지정해주고 value엔 type속성이나 string,number,boolean등 필요한 값을
상황에 맞게 써준다.
인터페이스로 클래스 적용하기
인터페이스의 확장 extend
두개의 인터페이스를 상속
새싹DT 기업연계형 프론트엔드 실무 프로젝트 과정 10주차 블로그 포스팅
'TYPESCRIPT' 카테고리의 다른 글
[새싹 프론트엔드]Typescript 기본문법 (0) | 2022.12.13 |
---|