일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 러스트 기초 학습
- vue기초
- 스마트컨트렉트테스트
- SBT표준
- ethers websocket
- rust 기초
- 스마트컨트렉트프록시
- 스마트 컨트렉트 함수이름 중복
- ambiguous function description
- ethers
- Vue
- ethers type
- ethers typescript
- 러스트기초
- 프록시배포구조
- git rebase
- 티스토리챌린지
- ethers v6
- multicall
- 머신러닝기초
- 컨트렉트 배포 자동화
- 컨트렉트 동일한 함수이름 호출
- nest.js설명
- 러스트 기초
- 체인의정석
- Vue.js
- chainlink 설명
- 스마트컨트렉트 예약어 함수이름 중복
- 오블완
- 스마트컨트렉트 함수이름 중복 호출
Archives
- Today
- Total
체인의정석
타입스크립트에서 사용자 정의 타입 만들기 본문
728x90
반응형
// 사용자 정의 타입 operation 정의
// 타입 별칭(Type Alias)
type operation = {
data: number[],
output:(num:number)=>number[]
};
// 사용자 정의 타입 operation 적용 예시
let sum:operation = {
data: [10, 30, 60],
output(num){
return this.data.map(n=>n+num);
}
};
let multiply:operation = {
data: [110, 230, 870, 231],
output(num){
return this.data.map(n=>n*num);
}
};
https://yamoo9.gitbook.io/typescript/types/custom
테스트를 하거나 각각 타입을 정의할 때는 type을 써서 사용자 지정 타입을 만들어 준 후 테스트 코드를 작성하면 된다.
이번 테스트의 경우 구조체를 입력값으로 받아와서 테스트 하였기 때문에 구조체에 해당하는 타입을 만들어 준 후에 타입을 대입하여 생성하는 함수를 만들고 정의한 값에 생성 함수를 대입한다음 테스트 코드를 사용하여 테스트 코드의 양을 줄였다.
타입 정의
type Type = {
a: string;
b: B;
c: number;
};
enum B {
B1,
B2,
}
이런식으로 타입을 지정해 준 후
실제로 만들어 주는 함수를 쓰고
const makeType = (
_a: string,
_b: B,
_c: number
) => ({
a: _a,
b: _b,
c: _c,
});
만들어 준 함수의 경우
let TypeEX1: Type;
let TypeEX2: Type;
//////test code////
.
.
.
TypeEx1 = makeType("ex",B.B2,1)
TypeEx2 = makeType("ex2",B.B1,12)
이런식으로 사용하면 테스트 데이터를 타입으로 가져와서 사용할 수 있다.
728x90
반응형
'개발 > backend' 카테고리의 다른 글
npm 모듈 버전 다운그레이드 (0) | 2022.08.01 |
---|---|
typescript로 UUID 만들기 (0) | 2022.07.20 |
Klaytn 컨트렉트 백엔드에서 서명하는 방법 (2) | 2022.06.13 |
ParseInt() 를 사용하여 숫자타입으로 바꾸어서 비교하기 (0) | 2022.05.13 |
컨트렉트 배포/운영용 프로그램 만들기 여러개의 파일 cmd에서 하나로 체크해서 넘기기 - 구현 (inquirer , oclif) (0) | 2022.04.29 |
Comments