분류 전체보기155 8.Intersection Intersection Types: & type Student = { name: string; score: number; }; type Worker = { empolyeeId: number; work: () => void; }; function internWork(person: Student & Worker) { console.log(person.name, person.empolyeeId, person.work()); } internWork({ name: 'sein', score: 1, empolyeeId: 123, work: () => {}, }); 모든것 And 와 비슷하다 Student & Worker 학생이면서 일을 하는 타입 함수를 사용 할 때는 모든 타입에 들어있는 키들을 모두 지정해줘야 한다.. 2021. 4. 17. 7.Union Union Types: OR type Direction = 'left' | 'right' | 'up' | 'down'; function move(direction: Direction) { console.log(direction); } move('down'); type TileSize = 2 | 16 | 32; const tile: TileSize = 16; | or union type 타입으로 설정된 값이 left, right, up, down 으로 정의 되어 있다 move() 입력할시 4가지만 할당 할수 있게 된다 type TileSize 정의 함수는 정의된 숫자만 할당 가능하다 그렇치 않으면 오류 생김 Discriminated union type SuccessState = { result: 'succ.. 2021. 4. 17. 6.Aliases TypeScript 강한 이유는 Aliases 있어서 이다 Type Aliases type Text = string; const name: Text = 'sein'; const address: Text = 'korea'; type Num = number; type Student = { name: string; age: number; }; const student: Student = { name: 'sein', age: 12, }; 직접 원하는 타입을 정의 할수 있으며 새로운 타입을 정의 할 수 있다 type으로 Text 라는 string이라는 타입을 만들 수 있다 String Literal Types type Name = 'name'; let seinName: Name; seinName = 'name';.. 2021. 4. 15. 5.배열 Array or Tuple Array const fruits: string[] = ['사과', '바나나']; const scroes: Array = [1, 3, 4]; function printArray(fruits: readonly string[]) {} Type[] 방법 Array 방법 readonly Type을 변경하지 못하도록 하기 Tuple -> interface, type alias, class let student: [string, number]; student = ['name', 123]; student[0]; // name student[1]; // 123 const [name, age] = student; 서로다른 Type이 있을 때 사용한다. Tuple 사용을 권장하지 않는다. 가독성이 너무 않좋고 어떤 데이터.. 2021. 4. 15. 이전 1 ··· 35 36 37 38 39 다음