TypeScript(4)
-
함수에 타입 지정하기
함수는 파라미터와 리턴 값에 타입 지정이 가능하다. function 두배(x: number) :number{ return x * 2 } 리턴값이 없는 경우 void 타입을 지정할 수 있다. function 리턴없는함수(x: string) :void{ console.log(x) } //에러나는 경우 function 리턴있는함수(x: string) :void{ return(x) } 파라미터가 옵션인 경우 function 파라미터는 옵션(x? :number) { // number | undefined 와 같다. ... } function 파라미터는 옵션(x? :number) :number { // 리턴 값이 number가 아닐수도 있으므로 에러 발생. return x }
2022.12.21 -
Nest.js 설치 및 시작
강의 : John Ahn - 따라하며 배우는 NestJS Node가 설치돼있다는 것을 전제로 터미널에서 sudo npm i -g @nestjs/cli 를 입력한다. 설치 완료 후 프로젝트 폴더로 이동 후 터미널에 nest new ./ 를 입력하면 완료. Nest Js 가 뭐야? - 아키텍처 NestJS는 서버 측 어플리케이션 개발에 있어 아키텍처의 문제를 해결하기 위해 등장 Express는 사용하기도 쉽고 성능도 뛰어나지만 아키텍처에 관한 정의나 기능을 제공X 팀 또는 사람마다 아키텍처가 다르면 이를 이해하기 위한 비용 또는 개발 전에 아키텍처를 선정하는 커뮤니케이션 비용이 증가 NestJS는 아키텍처에 대한 정의를 제공하기 때문에 동일한 아키텍처에서 다른 개발자가 작성한 코드를 쉽게 이해할 수 있다. ..
2022.08.17 -
Type Narrowing
유니온 타입의 경우 위의 연산을 하려면 조건을 달아주거나 Assert 하거나 해주어야 한다. Type Narrowing 타입이 확실하지 않을 때 생기는 부작용을 막기위한 장치. defensive 하게 코딩한다고 한다. Type Assertion 변수명 as number -> 함수에 무조건 숫자가 들어올 것임을 알고 있을 때 안전하게 쓸 수 있는 문법. number로 타입을 변경해주는것은 아니다. 주장만 해주는 것이다. as를 쓰면 간편하지만 정확히 코드를 쓰려면 narrowing 을 쓰는 것이 좋다. 임시로 에러 해결용으로 사용하거나 어떤 타입이 들어올지 정말 확실하게 알고 있는데 컴파일러 에러가 방해할 때 사용한다.
2022.08.15 -
타입을 미리 정하기 애매할 때
타입스크립트는 타입을 지정해주어야 하는데 타입을 미리 정하기 애매할 때에 사용하는 것들은 무엇이 있을까. Union type OR 연산자 같은 느낌으로 Union type을 지정해준다. 유니온 타입은 이렇게 선언할 수 있고 타입만 따로 선언한 이후에 쓸 수도 있다. string, number를 선언하고 문자열 또는 정수에는 오류가 안뜨지만 boolean 값을 할당하면 오류가 뜬다. let 회원들: (string | number)[] = [1,'2',3]; let 오브젝트 : {a: string | number} = {a: 123} 배열 또는 객체에 Union type 선언하기. Unknown : 타입 지정 애매한데 약간의 안정성은 챙겨간다. let 언노운 :unknown; 언노운 = 123; 언노운 = ..
2022.08.15