본문 바로가기

개인공부/캡틴판교 TS11

6. 타입별칭, 타입과 인터페이스차이 타입별칭: 특정 타입이나 인터페이스를 참조할수 있는 타입 변수를 의미한다. //string 타입을 사용할때 const name: string = 'capt'; //타입 별칭을 사용할때 type MyName = string; const name: MyName = 'capt'; type 뒤에 써있는 Person을 type 별칭이라고 하는데, 변수같은거로 생각하면 된다!!!! 타입별칭: 새로운 타입 값을 하나 생성하는 것이 아니라 정의한 타입에 대해 나중에 쉽게 참고할 수 있게 이름을 부여하는 것과같다. 타입과 인터페이스의 차이!!!! -가장 큰 차이는 확장 가능 여부이다!! -인터페이스는 확장이 가능하지만 타입별칭은 확장이 불가능하다 -그래서 가능한 type보다는 .. 2023. 5. 7.
5. 인터페이스 인터페이스: 상호간의 약속 interface User { age: number; name: string; } // 변수에 활용한 인터페이스 var seho: User={ age: 2, name: 'john' } interface User { age: number; name: string; } function getUser(user: User){ console.log(user); } getUser라는 함수는 User라는 특정 형식의 데이터만 받겠다는의미이다!!!!! interface User { age: number; name: string; } //함수에 인터페이스 활용 function getUser(user: User){ console.log(user); } c.. 2023. 5. 7.
3-3. 실습 //tsconfig.json { "compilerOptions": { "allowJs": true, "checkJs": true, "noImplicitAny": false }, "include": ["./src/**/*"] } 저기서 noImplicitAny를 true로 바꾸면 ts파일에 타입이 정해지지 않을것들에 빨간줄이 생길거다!!! noImplicitAny 의미는 any라고 붙여라. 이런의미이다. 실습하기전 상태 let todoItems; // api function fetchTodoItems() { const todos = [ { id: 1, title: '안녕', done: false }, { id: 2, title: '타입', done: false }, { id: 3, title: '스크립트'.. 2023. 5. 7.
3-2. 함수타입-파라미터,반환값, 옵셔널파라미터 //함수의 파라미터에 타입을 정의하는 방식 function sum(a: number, b: number) { return a + b; } sum(10, 20); //함수의 반환 값에 타입을 정의하는 방식 function add(): number { return 10; //return 안넣으면 에러난다!!! } //함수에 타입을 정의하는 방식 function sum2(a: number, b: number): number { return a + b; } 자바스크립트에서는 지정된거 말고 뒤에 더 넣어도 상관없다. 그냥 반응하지 않을 뿐이다. // JavaScript function sum3(a, b) { return a + b; } sum3(10, 20); //a와b 자리말고 뒤에 더 넣어도된다. 다만 뒤에 .. 2023. 5. 6.