(JS) for문과 while문의 차이

upship·2022년 9월 15일
0

요약

for 문은 반복의 범위가 명확할때 사용,
while 문은 원하는 값을 얻을 때까지 반복을 돌려야할 때 사용!

최근 어떤 계기로 인하여 뒤늦은(?) 알고리즘 공부를 시작하였는데
for문과 while문을 제 용도에 맞지 않게 써 시간초과, 런타임에러, 틀렸다는 결과를 받고 기억하고자 for문과 while문의 차이를 정리하려 합니다.


for문

for문의 코드 구조는 아래와 같습니다.

for(초기값; 조건식; 증감연산)
	...동작 코드
}

//예시
for(let i = 0; i < 10; i++){
	console.log(i)
}

for문은 조건식이 거짓 으로 판별될 때까지 반복합니다.
여기서 조건식은 i < 10; 으로 정의된 부분입니다.

위 조건식이 false 가 될때까지 i는 0부터 시작해서 9가 되는 순간까지
콘솔 로그를 찍게 됩니다.

이와 같이 조건식(반복의 범위) 가 들어가는 for문은
1. 구하고자 하는 값의 조건이 무엇인지 명확할 경우 사용합니다.
2. 반복 횟수에 따라 값을 구한다던지 또는 횟수를 참조해야할때 사용합니다.


while문

while문의 코드 구조는 아래와 같습니다.

while(조건식){
	...동작 코드
}

//예시
while(true){
	console.log('hi')
}

while문은 어떤 조건문이 참이기만 하면 문장을 계속해서 수행합니다.
for문에 비해 변수도 새로 만들지 않고 훨씬 간단합니다.

간단한 만큼 예시와 같이 조건식이 항상 true인 경우 무한루프에 빠지기 쉽습니다. 그래서 주로 break문과 함께 쓰입니다.
(break문은 반복에서의 탈출을 위해 사용하며 for문도 적용 가능합니다.)

이와 같이 while문은
1.반복의 범위 가 명확하지 않지만 원하는 값이 나올때까지 계속해서 반복할때 사용합니다.

(다만 조건이 항상 거짓일지라도 무한 루프는 피해야합니다)

profile
사소한 곳에서 발휘하는 정직은 사소하지 않다

0개의 댓글