본문 바로가기
개발 (언어)/TypeScript & Blockchain

[Block_chain] Typescript(6) 블록체인 구현 - IsValid 체크

by 진현개발일기 2022. 2. 6.

[2022. 02. 06, Sun]

 

▼ 블록 생성이 가능한지를 판단하는 boolean 리턴 타입의 함수이다. 강좌 따라 작성해봤다.

1. 구조가 같은지 체크 

2. 인덱스가 이전 보다 +1 되었는지 체크

3. 새로 add될 블록이 prevBlock의 Hash값을 제대로 갖고있는지 체크

4. 새로 add될 블록의 Hash값이 의도한 구조대로 생성되었는지 체크

이다.

Typescript에서 타입이 같은 지를 저렇게 체크하나보다.  C#에서는 비교를 ==로 하는데 

차이가 무엇인지 찾아봤다.

 자바에서는 falsy 값이라는 것이 있다고 한다. 

C#에서는 if(77 == "77") 이 애초에 안되는 것인데 자바에서는 된다고한다.

"77"를 파싱해서 같은 지를 비교를 한다고한다.  그래서 if(false == 0) 또한 실행되어 true를 반환한다고 한다.

 

falsy 값 무시하고 직관적으로 같은 지를 확인하는 용도가 === 라고 한다. (대박 신기)

 

▼ addBlock 함수.

▼ createNewBlock 함수.

 

▼ 출력 값

정상 작동한다.

솔직히, 당연한거지만, 이것만 해봐서는 이것의 이득을 잘 모르겠다. 강의는 끝났지만 공부를 좀 더 해버고 방향을 정해보자.

728x90