반복문
TypeScript는 JavaScript와 동일한 반복문을 사용하는데, 크게 for 문 과 while 문을 사용한다.
for 문
for 문은 크게 3가지 타입이 있는데, for, for..of, for..in 문이 있다.
for : 가장 기본적인 for 문은 for(초기값; 반복조건식; 증감식) 과 같은 문법을 사용하는데, 먼저 반복문의 초기값을 정하고 반복할 때마다 반복조건식을 체크하여 조건이 참이면 for 블력 안의 문장들을 실행한다. for 블럭을 실행 한 후에는 증감식에 있는 문장을 실행하고 다시 반복조건식을 체크하여 반복여부를 판단한다. 아래 예제는 1부터 10까지의 숫자를 콘솔에 출력하는 반복문이다.
for (let i = 1; i <= 10; i++) { console.log(i); }
for..of : for..of 문은 for(var 요소 of 컬렉션) 과 같은 문법을 사용하는데, 컬렉션(배열, 리스트, 튜플 등)의 요소를 순차적으로 엑세스하여 for 블럭을 반복하는 문장이다. 아래 예제는 scores에 저장된 배열 요소를 차례로 콘솔에 출력하는 반복문이다.
let scores = [70, 80, 90]; for (let s of scores) { console.log(s); }
for..in : for..in 문은 for(var 인덱스 in 컬렉션) 과 같은 문법을 사용하는데, 루프는 컬렉션(배열, 리스트, 튜플 등)의 (요소값 대신) 요소의 인덱스를 리턴한다. 아래 예제는 scores에 저장된 배열 인덱스를 가져와서 출력해 보는 코드로서, 인덱스를 사용해서 다시 배열요소값을 가져오고 그 합계를 구하고 있다.
let scores = [70, 80, 90]; let sum: number = 0; for (let index in scores) { console.log(index); sum += scores[index]; } console.log(sum);
while 문
while 문은 크게 while , do...while 등 2가지 표현이 있다. 먼저 while(조건식) {...} 과 같은 while문은 조건식이 참일 경우 while 블럭 안의 문장들을 반복 실행하는 것이다. do...while(조건식)은 일단 무조건 블럭 안의 문장들을 한번 실행 한 후, while 조건식을 체크하고 그 조건식이 참이면 계속 루프를 실행한다.
while 문 : 아래 예제는 while 문을 사용하여 1부터 10까지를 출력한 예이다.
let i: number = 1; while (i <= 10) { console.log(i) i++; }
do..while 문 : 아래 예제는 do..while 문을 사용한 예로서, do..while 문은 아래 예와 같이 먼저 블럭 내의 문장을 실행하지 않으면 조건식을 체크할 수 없는 경우 유용하게 사용될 수 있다.
function getData() { return null; } let data: any; do { data = getData(); console.log(data); } while(data != null);