일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ip
- 알고리즘
- 크롤링
- socket
- 문자열
- 가천대
- Nestjs
- dp
- type challenge
- Crawling
- 프로그래머스
- BFS
- 타입 챌린지
- 수학
- 프로그래머스 레벨 2
- 그래프
- TCP
- Node.js
- Algorithm
- 소켓
- 쉬운 문제
- 자바스크립트
- 타입스크립트
- dfs
- typescript
- 백준
- javascript
- HTTP
- HTTP 완벽 가이드
- 레벨 1
- Today
- Total
목록typescript (15)
kakasoo
type Length = T['length']; 타입 레벨에서의 extends 키워드는 타입 상속을 의미한다. 타입 A가 B를 상속할 때, A는 B의 모든 프로퍼티와 메서드를 상속받아야 하는데, 조건문의 의미로도 쓰인다. A가 B를 상속받는다는 것은 최소한 A가 B와 같거나, B보다 더 구체적인 ( = 더 많은 프로퍼티를 가진 ) 것이다. 위의 Length는, 생각보다 별 거 아닌 게, 제너릭으로 받은 T는 any[]를 상속받으니 즉 어떠한 배열을 의미한다. T가 배열이라면 반드시 내부에 length 프로퍼티가 있기 때문에, T[’length’]로 특정 프로퍼티를 뽑을 수 있다. type Length = T['length']; type A = Length; const length: A = 5; // 5가..
싱글턴 패턴은 한 클래스의 인스턴스가 하나만 존재하도록 강제하는 패턴이다. 이런 패턴은 동일한 기능을 하는 여러 인스턴스가 생성되는 것을 막아 메모리 낭비를 줄이기 위해 사용된다. 간혹 우리가 데스크탑의 파일을 여러 번 클릭할 때, 파일이 한 번만 열리는 경우가 있는데 이런 게 싱글턴이다. 다른 객체지향 언어에서는 이걸 구현하기 위해 여러 줄의 코드를 작성하지만, node.js에서는 한 줄로도 된다. export default new (class singleton {})(); node.js에서는 이처럼, 파일에서 다른 파일로 내보낼 때 이미 생성된 인스턴스를 내보내기만 하면 된다. 이러면 어느 파일에서 부르든 동일한 객체를 가져오기 때문에 싱글턴과 동일한 효과를 낼 수 있다. 하지만 자바스크립트는 클래스..
// package.json의 일부 { "dependencies": { "@nestjs/common": "^9.2.1", "@nestjs/testing": "^9.2.1", "typescript": "^4.9.4" }, "devDependencies": { "@types/jest": "^29.2.5", "@types/node": "^18.11.18", "jest": "^29.3.1", "ts-jest": "^29.0.3" }, } 최소한의 라이브러리로 위와 같이 install을 진행했다. NestJS 라이브러리를 만들 것이기 때문에 @nestjs/common과 @nestjs/testing을 install 하였고, typescript를 쓰기 위해 typescript library와 각종 타입, 테스트를 위..