본문 바로가기

분류 전체보기414

이넘(enum) 최종수정 : 2024-05-30이넘 타입(enum type)여러가지 값에 이름을 부여해 열거해두고 사용하는 타입 자바스크립트에는 이넘이 없다. 이를 자바스크립트로 표현하자면, 객체와 비슷하다.즉시실행함수 형식으로 값이 나온다.특정 값의 집합을 의미하는 데이터 타입이며, 상수 집합이라고도 표현한다. 비슷한 성격이나 같은 범주에 있는 상수를 하나로 묶어 더 큰 단위의 상수로 만드는 역할을 한다. 또한, 이넘은 컴파일을 해도 사라지지 않는다.const user1 = { name : 'A', role : 0 // const user1 = { name: 'A', role: Role.ADMIN, };const user2 = { name: 'B', role: Role.USER,};const user3 = .. 2023. 7. 26.
타입 별칭(type alias) / 인덱스 시그니처(index signature) 최종 수정 : 2024-05-27 cf. 리터럴 타입변수의 값을 타입으로 정의하는 것이며, let을 사용하느냐 const를 사용하느냐에 따라 타입이 다르게 추론된다.// let은 타입추론, const는 리터럴 타입 let literal1 = '타입스크립트 공부'; const literal2 = '타입스크립 익히기'; let medium = 90; const large = 100;타입 별칭(type alias)타입에 '이름'을 정하는 문법이다. 복잡한 타입에 이름을 붙이고 재사용하고 싶을 때 사용한다. - 특정 타입이나 인터페이스 등을 참조할 수 있는 타입 변수를 의미 - 가장 큰 장점 : 반복되는 타입 코드를 줄여 준다. 타입 별칭과 인터페이스의 차이 1) 코드 에디터에서 표기 방식 차이 - 타입 별칭은.. 2023. 7. 26.
리터럴 타입(literal type) / 유니언 타입(union type) / 인터섹션 타입(intersection type) 최종 수정 : 2024-05-27리터럴 타입(literal type)변수를 let과 const 키워드로 타입을 선언했을 때, 타입이 다르게 추론된다. const로 선언한 변수의 타입을 '리터럴 타입'이라고 한다. 변수의 값을 타입으로 설정한다는 의미이다. const로 선언된 변수는 값이 바뀔 일이 없으므로, 값 자체를 타입으로 추론해버리는 것이다.let name1 = 'yeongtaek'; // string 타입const name2 = 'yeongtaek'; // 리터럴 타입let price = 100;const cost = 5000;유니언 타입(union type)여러 개의 타입 중 한 개만 쓰고 싶을 때 사용하는 문법이며, OR 연산자(합집합)의 | 를 이용하여 여러 개의 타입 중 1개를 사용하겠다고.. 2023. 7. 26.
인터페이스(Interface) 최종 수정 : 2024-05-28인터페이스(Interface)타입에 이름을 지어주는 또 다른 문법이다. 또한 객체의 구조를 정의하는데 특화된 문법이다. 이에 따라, 상속 및 병합 등의 특수한 기능을 제공한다. 인터페이스(interface)라는 뜻은 '상호간에 약속된 규칙'이라는 뜻이다. 그래서 프론트엔드 개발과 백엔드 개발로 나누어 웹 애플리케이션을 만들 때, 서버에서 어떻게 데이터를 줄지 정하는 작업을 '인터페이스를 맞춘다'고 표현하기도 한다. 메서드 오버로딩인터페이스로 타입을 정의할 수 있는 부분1) 객체의 속성과 속성 타입인터페이스의 타입과 맞지 않는 객체에 인터페이스를 지정한다면 에러가 발생한다.interface Book { name: string; page: number;}let TypeScri.. 2023. 7. 26.
변수와 함수의 타입 정의 최종 수정 : 2024-05-27타입 정의타입스크립트의 장점을 극대화하려면 가급적 타입을 최대한 구체적으로 선언해야 한다. 변수에 타입을 선언하고 싶다면 변수 뒤에 ': 타입이름'을 추가한다. 클론( : )을 타입 표기(type annotation)이라고 한다.let name: string = 'yeongtaek';기본 타입타입스크립트가 자체적으로 제공하는 타입. 즉, 내장 타입이라고 말할 수 있다. 타입트리(타입 계층도)1) 원시타입(Primitive Type)하나의 값만 저장하는 타입1) number : 숫자만 취급--> 음수, 정수, Infinity, -Infinity, NaN2) string : 문자열3) boolean : 진위 값만 취급4) null : 의도적인 빈 값을 의미. 개발자가 의도적으.. 2023. 7. 25.