목록Study/TypeScript (19)
Jieunny의 블로그
exercises5 📌 Type 구조를 복제하지 않고 filterUsers 함수 정의를 수정하여 입력에 따라 필요한 전체 User 정보가 아닌 필요한 criteria만 전달해라. interface User { type: 'user'; name: string; age: number; occupation: string; } interface Admin { type: 'admin'; name: string; age: number; role: string; } export type Person = User | Admin; export const persons: Person[] = [ { type: 'user', name: 'Max Mustermann', age: 25, occupation: 'Chimney sw..
exercises4📌 TypeScript가 이 상황에서 type을 이해하기 위해 필요한 수정사항을 적용해라 interface User { type: 'user'; name: string; age: number; occupation: string; } interface Admin { type: 'admin'; name: string; age: number; role: string; } export type Person = User | Admin; export const persons: Person[] = [ { type: 'user', name: 'Max Mustermann', age: 25, occupation: 'Chimney sweep' }, { type: 'admin', name: 'Jane Doe..
타입스크립트에 대한 감을 잃어버린 것 같아서 연습문제를 꾸준히 풀어보려고 한다. 💪 🔗 연습문제 링크 TypeScript Exercises A set of interactive TypeScript exercises typescript-exercises.github.io exercises1 📌 데이터가 주어지면, User 인터페이스를 정의하고 사용해라. export interface User { name: string; age: number; occupation: string; } // type을 사용해도 된다. export const users: User[] = [ { name: 'Max Mustermann', age: 25, occupation: 'Chimney sweep' }, { name: 'Kat..
📣 함수형 프로그래밍이란? ✔️ 함수형 프로그래밍 : 순수 함수와 선언형 프로그래밍의 토대 위에 '함수 조합' 과 '모나드 조합'으로 코드를 설계하고 구현하는 기법 ➰ 함수형 프로그래밍 언어는 정적 타입, 타입 추론 등에 기반을 둔 고차 타입, 패턴 매친 등의 고급 기능을 제공한다. 📣 제네릭 함수 ✔️ number 와 같은 타입을 타입 변수 T로 표기할 때 이를 '제네릭 타입' 이라고 한다. ➰ 함수 조합을 구현할 때는 제네릭 함수 구문을 사용해야 한다. 📍 타입스크립트의 제네릭 함수 구문 function g1(a: T): void {} ➰ 제네릭 타입으로 함수를 정의하면 어떤 타입에도 대응할 수 있다. ➰ g1 함수는 a 매개변수가 제네릭 타입으로 지정되었다. type Type1Func = (T) =..
📣 비동기 콜백 함수 📍 동기와 비동기 API ➰ 노드제이에스는 파일 시스템과 관련된 기능을 모아둔 fs패키지를 제공한다. ➰ 같은 기능을 동기와 비동기 버전으로 나누어 제공한다. ➰ 이름에 Sync가 붙은 것이 동기 버전이다. import {readFileSync, readFile} from 'fs' // 동기 방식으로 읽는 예 const buffer: Buffer = readFileSync('./package.json') console.log(buffer.toString()) // 비동기 방식으로 읽는 예 readFile('./package.json', (error: Error, buffer: Buffer) => { console.log(buffer.toString()) } // Promise와 as..
📣 반복기 이해하기 ✔️ tsconfig.json에서 downlevelIteration 항목을 true로 설정해야 반복기가 정상적으로 동작한다. 📍 반복기와 반복기 제공자 ➰ for...of 구문은 다른 프로그래밍 언어에서도 '반복기'라는 주제로 찾아볼 수 있다. ➰ 반복기는 다음과 같은 특징이 있는 객체이다. ﹒ next라는 이름의 메서드를 제공한다. ﹒ next 메서드는 value와 done이라는 두 개의 속성을 가진 객체를 반환한다. // 반복기 제공자 export const createRangeIterable = (from: number, to: number) => { let currentValue = from return { next() { const value = currentValue < t..