반응형 개발 용어 정리25 [Typescript] Decorator(데코레이터) 타입스크립트_ Decorator(@) 1. 데코레이터를 잘 사용하면 적절하게 관심사를 분리하여 관점 지향 프로그래밍을 적용한 코드를 작성할 수 있음 2. 타입스크립트의 데코레이터는 파이썬의 데코레이터나 자바의 어노테이션과 유사한 기능을 함 3. 클래스, 메서드, 접근자, 프로퍼티, 매개변수에 적용 가능 4. 각 요소의 선언부 앞에 @로 시작하는 데코레이터를 선언하면 데코레이터로 구현된 코드를 함께 실행 5. 예를 들어 다음 코드는 유저 생성 요청의 본문을 DTO로 표현한 클래스이다. class CreateUserDto{ @IsEmail() @MaxLength(60) readonly email: string; @IsString() @Matches(/^[A-Za-z\d!@#$%^&*()]{8,30}$/) r.. 2023. 2. 5. [js] duck typing(덕 타이핑) with typescript [ts]_덕 타이핑(duck typing) - 타입 구성하기 자바스크립트는 변수에 어떠한 타입의 값도 할당할 수 있다. 일명 덕 타이핑이라 부른다. 타입스크립트도 여러 타입의 값을 할당할 수 있다. 이는여러 타입을 조합한 새로운 타입을 가지는 것이다. 유니언 (Union) 타입 유니언 타입이 위에서 설명했던 여러 타입을 조합한 타입이다. 다음 코드에서 getLength 함수의 인자로 받은 obj 객체는 string 또는 string 배열 타입을 가질 수 있다. function getLength(obj: string | string[]){ return obj.length; } 유니언 타입을 활용하면 변수가 가질 수 있는 값을 제한할 수도 있다. type Team = "Red" | "Blue"; 타입스크립트.. 2023. 2. 5. [js] 즉시 실행 함수 표현 식(IIFE) IIFE(immediately-invoked function expressions) javascript에서는 과거에 var만 사용할 수 있었다. 그런데 var의 스코프는 블록 레벨 수준이 아니기 때문에 생긴 '즉시 실행 함수 표현 식(immediately-invoked function expressions)'이 있다. 즉시 실행 함수 표현 식은 IIFE라고 부른다. 즉시 실행 함수 표현 식을 요즘에는 자주 쓰지 않는다. 하지만 레거시 코드에서 만날 수 있기 때문에 즉시 실행 함수 표현 식이 무엇인지 알아 둘 필요가 있다. IIFE는 다음과 같이 생겼다. (function() { let sayHello = "Hello"; alert(sayHello); // 출력값: Hello })(); 함수 표현 식이 만.. 2023. 2. 4. [js] hoisting(호이스팅) javascript_호이스팅(hoisting) 이란? = 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것이다. (var, 함수의 경우가 있다) 변수의 선언과 초기화를 분리한 후, 선언만 코드의 최상단으로 옮기는 것이다. 변수를 정의하는 코드보다 사용하는 코드가 먼저 선언될 수 있다. * 선언과 초기화를 함께 수행하는 경우, 선언 코드까지 실행해야 변수가 초기화된 상태 function sayHello(name) { console.log("안녕하세요 제 이름은 " + name + "입니다"); } sayHello("홍길동"); 위의 코드가 일반적으로 코드를 작성하는 순서이다. 출력값 안녕하세요 제 이름은 홍길동입니다. 아래의 코드는 js에서 함수 호출이 함수 자체보다 앞서 존재하는 방식이다. say.. 2023. 2. 4. [개발용어] 거짓같은 값(falsy) 거짓같은 값(falsy) 거짓같은 값으로 falsy 혹은 falsey로 쓰이기도 한다. 쉽게 말해 boolean 타입에서 false로 평가되는 값들이다. 더 쉽게 말해서 console.log(x); x라는 값이 false로 출력되는 값들을 이야기 한다. 키워드 = false 숫자: 0, -0 빈 문자열 : "", '' BigInt 타입: 0n nullish: null, undefined 숫자가 아님: NaN 위의 값들은 false를 반환하기 때문에 해당 값을 if문에 넣는다면 실행되지 않는다. 2023. 2. 3. 이전 1 2 3 다음 반응형