💡 Today I Learned
조건문 및 반복문에 대해 알아보았다.
- 새로 배움: 튜링 불완전성
- 오늘의 하이라이트: 이더리움은 튜링 불완전성을 극복한 언어다.
- 궁금한 내용: 튜링 완전성을 가진 프로그래밍 언어의 특장점이 무엇인가?
주어진 조건에 따라 코드 블록을 실행한다
()
안에 나타내며 true
,false
로 구분되어야 한다{}
로 감싼 형태로 끝에 세미콜론 ;
이 붙지 않는다true
일 동안 코드블록을 실행한다if(true){ console.log(“Hello World!”); }
true
일 동안 if문을 실행하고 false
인 경우에는 else문이 실행된다.if(true){ console.log(“This is true!”); } else { console.log("This is false!"); }
true
일 동안 if문을 실행하고 false
인 경우에는 다른 else if 문의 조건이 맞는지 확인해본다. 맞으면 실행하고 false
인 경우에는 else 문을 실행한다.let a = -10; if (a > 0) { console.log('a는 0보다 큽니다.'); } else if (a < 0) { console.log('a는 0보다 작습니다.'); } else { console.log('a는 0입니다.'); }
let day = 7; switch(day) { case 1: day = "Monday"; break; case 2: day = "Tuesday"; break; case 3: day = "Wendnesday"; break; case 4: day = "Thursday"; break; case 5: day = "Friday"; break; case 6: day = "Saturday"; break; case 7: day = "Sunday"; break; default: day = "요일이 아닙니다."; break; } console.log(day);
일정한 로직을 반복해서 사용해야 하는 경우에 사용된다.
()
안에는 3개의 항목을 입력해야 한다for (let i = 0; i < 10; i++) { console.log(`${i + 1}번째 실행입니다.`); }
true
인 동안에 코드블럭을 반복 실행한다.break
문을 통해 탈출할 수 있다.let i = 0; while (i < 10) { console.log(`${i + 1}번째 실행입니다.`); i++; }
let i = 0; do { console.log(`${i + 1}번째 실행입니다.`); i++; } while (i < 10)
튜링 불완전성(Turing Incomplete) 이란?
튜링 완전성을 갖추려면,
튜링머신이 할 수 있는 것을 할 수 있어야 한다
- 이더리움은 튜링 불완전성의 한계를 극복한 언어다
- 이더리움에서 조건문, 반복문을 비교적 자유롭게 사용할 수 있으며 스마트 컨트랙트 코드를 통해 다양한 dApp을 만들 수 있다