목록TS (4)
초짜코딩의 잡동사니

Generics제네릭은 C#이나 Java와 같은 언어에서 재사용 가능한 컴포넌트를 만들기 위해 사용하는 기법이다 단일 타입이 아닌 다양한 타입에서 작동할 수 있는 컴포넌트를 생성할 수 있다.(구체적인 타입을 지정하지 않고 다양한 인수와 리턴 값에 대한 타입을 처리할 수 있다.)타입스크립트에서 제네릭을 통해 인터페이스, 함수 등의 재사용성을 높일 수 있다.function identity(arg: Type): Type {return arg;}// 제네릭 화살표 함수 (tsx기준)const identity=(arg: Type):Type => {return arg;}let output = identity("myString"); // 첫 번째 방법let output = identity("myString"); //..

📌 TS의 변수타입(part III)✅ unknownunknown타입은 모든 값을 나타냅니다. 이것은 any타입과 비슷하지만 any보다 unknown이 더 안전합니다. 이유는 unknown값으로 작업을 수행하는 것은 합법적이지 않기 때문입니다.let a:unknownif(typeof a === 'number'){ let b = a + 1 } if(typeof a === 'string'){ let b = a.toUpperCase() } 🚫 let b = a + 1✅ voidvoid는 값을 반환하지 않는 함수의 반환 값을 나타냅니다. 함수에 return 문이 없거나 해당 return 문에서 명시적 값을 반환하지 않을 때 항상 유추되는 타입입니다.function hello() { conso..

📌 TS의 변수타입(part II)✅ readonly 사용하기type Player = { readonly name:string age?:number}const playerMaker = (name: string): Player => ({name})const nico = playerMaker("nico")🚫 nico.name = "aa"const numbers: readonly number[] = [1, 2, 3, 4]🚫 numbers.push(1)❗ readonly가 있으면 최초 선언 후 수정 불가 ⇒ immutability(불변성) 부여 but, javascript에서는 그냥 배열✅ Tuple정해진 개수와 순서에 따라 배열 선언const player: [string, n..

📌 TS의 변수타입✅ 배열: 자료형[]✅ 숫자: number✅ 문자열: string✅ 논리: boolean✅ optionalconst player : { name: string, age?:number} = { name: "nico"} ❌ player.age가 undefined일 가능성 알림if(player.age ⭕ player.age가 undefined일 가능성 체크if(player.age && player.age ❗ ?를 :앞에 붙이면 optional✅ Alias(별칭) 타입type Player = { name: string, age?:number}const player : Player = { name: "nico"} ⭐ 함수에서는 어떻게 쓸까type Player..