[TypeScript] 타입을 import export namespace 문제
2022. 12. 30. 15:15ㆍCodingTest/TypeScript Q
(문제1)
Car 와 Bike 타입을 index.ts에 만들어놨는데 서식이 복잡해서 다른 파일로 옮겨서 사용하고 싶습니다.
코드를 다른 파일에 저장하여 index.ts에서 가져와서 변수만들 때 사용해보십시오.
(index.ts)
type Car = {
wheel : number,
model : string
}
interface Bike {
wheel : 2,
model : string
}
더보기
타입담아둘 파일
(post.ts)
export type Car = {
wheel : number,
model : string
}
export interface Bike {
wheel : 2,
model : string
}
가져다쓰는 파일
(index.ts)
import {Car, Bike} from './a'
let 빠방이 :Car = { wheel : 4, model : 'Sonata' }
(문제2)
이 함수는 파라미터로 object자료 하나를 선택적으로 집어넣을 수 있고
아무것도 return 해주지 않아야합니다.
함수 만들 때마다 여기에 타입 일일이 붙이기 귀찮아서 그런데
이 타입을 다른 파일에 저장해두고 import 해와서 함수 만들 때마다 쓰려면 어떻게 코드를 짜야할까요
더보기
타입담아둘 파일
(post.ts)
export type ObjFunction = (a? :object) => void
가져다쓰는 파일
(index.ts)
import {ObjFunction} from './'
let 함수 :ObjFunction = function(a){
console.log(a)
}
함수({abc : '안뇽'});
(문제3)
타입 중복이 너무 많이 발생합니다.
아래 코드에서 에러를 없애야합니다. 어떻게 코드를 짜면 될까요?
(조건) type Dog, interface Dog의 타입이름 변경 금지, 파일 분할 금지
(조건) namespace 사용해보세요
type Dog = string;
interface Dog { name : string };
let dog1 :Dog = 'bark';
let dog2 :Dog = { name : 'paw' }
더보기
namespace GoodDog {
export type Dog = string;
}
namespace BadDog {
export interface Dog { name : string };
}
let dog1 :GoodDog.Dog = 'bark';
let dog2 :BadDog.Dog = { name : 'paw' }
1. namespace를 2개 만들고 각각 다른 타입을 담고
2. 첫째 타입은 GoodDog.Dog 이렇게 쓸 수 있고
3. 둘째 타입은 BadDog.Dog 이렇게 쓸 수 있습니다.
'CodingTest > TypeScript Q' 카테고리의 다른 글
[TypeScript] tuple type으로 타입지정 문제 (0) | 2022.12.31 |
---|---|
[TypeScript] 파라미터로 입력하는 Generic 문제 (0) | 2022.12.30 |
[TypeScript] 함수 rest 파라미터, object array destructuring 문제 (0) | 2022.12.30 |
[TypeScript] Narrowing 문제 (1) | 2022.12.29 |