포문을 잘 알자..
왜냐하면 그것을 잘 알아야 주제를 잘아는..머그런..
만약에 내가 document.write('님 바보')
를 쓴다고 치자.
그럼 화면에 님 바보
가 써지겠죠..?
하지만 님이 너무너무 바보라서 님 바보를 500번 쓰고 싶으면 어쩔거임?
그러면
1) document.write('님 바보')
를 정성스럽게 500번 친다(진정한 바보)
2) document.write('님 바보')
를 499번 복붙(적당히 바보)
3) document.write('님 바보')
를 반복문 돌리기(당신은 바보를 탈출하셨습니다)
자바스크립트 또한 모든 컴푸타 언어들이 그렇듯, 반복문을 가지고 있다
컴터가 이런 반복작업 안해주면 무슨 소용이란 말임?
1,2번 선택한 당신! 공부하세요
자바스크립트에서, 반복문의 종류는 좀 많다
반복문은 시작점과 끝점을 가진다.
진입하고, 돌다가, 끝점에 도달하면 나온다
for ([초기문]; [조건문]; [증감문])
문장
일반적 형태의 for문이죵?
모든 문은 선택적으로 작성한다. 다빼면 무한루프를 삥삥 돈다. 왜냐면 가운데 조건문도 빠지니까
무(없을 무)조건으로 포문을 돌리세요..뺑뺑돌겠지..
조건문이 있을 시 => 조건을 검사한다. 참이면 문장을 실행하고, 구라면 break에 걸려서 loop을 빠져나온다.
문장 실행 후 초기문의 값을 증감한다.
do
문장
while (조건문);
이 형태의 반복문은 일반적으로 do-while문이라고 불린다. 조건문을 확인하기 전에, 무조건 한번은 실행이 된다. 그리고 조건이 참일 시 또 문장 실행,,거짓일 시 break
while (조건문)
문장
이친구는 while문. 조건이 참이면 문장을 계속해서 수행한다
while (true) {
console.log("Hello, world");
}
이런코드를 생각해봐,,아주 렌더링 대박남 조건이 맨날 true인데 무한루프 안돌 이유가?
그래서 존재하는 것이 break
break
또는 break[레이블]
이라고 쓰는데, 레이블이 없을 시 가장 가까운 반복문에서 끝나고, 레이블이 있을 시 레이블문에서 끝난다.
이와 반대되는 개념으로 continue
가 있다.
continue 문은 현재 또는 레이블이 지정된 루프의 현재 반복에서 명령문의 실행을 종료하고 반복문의 처음으로 돌아가여 루프문의 다음 코드를 실행합니다.
- MDN
이게 무슨 말이냐면
let text = '';
for (let i = 0; i < 10; i++) {
if (i === 3) {
continue;
}
text = text + i;
}
console.log(text);
// expected output: "012456789"
이런 코드를 보면 바로 이해할 수 잇슴
i가 3인 경우에 continue를 하니까, 3인 경우엔 아래 코드를 실행을 안하고 다시 맨 처음으로 돌아간 것
좋은 예시 이미지를 찾음과 함께 포스팅 종료~!