🍧블록문 : 문을 {}중괄호로 묶은 것
🍧조건문 : 조건식의 평가 결과에 따라 블록의 실행을 결정함
if(조건식) {
// 조건식이 참일 때 실행
}else{
// 조건식이 거짓일 때 실행
}
조건식은 불리언 값으로 평가되어야하고, 만일! 조건식이 불리언 값이 아닌 경우 암묵적으로 불리언 값으로 강제 변환됩니다.
대부분의 if...else 문은 삼항 조건 연산자로 바꿔쓸 수 있습니다.
조건식 ? 참일 때 실행 : 거짓일 때 실행
❗삼항 조건 연산자는 값으로 사용할 수 있기 때문에 변수에 할당할 수 있습니다.
🍧swtich문 : 표현식 평가 → 값과 일치하는 표현식을 갖는 case 문으로 실행 흐름을 옮김
switch(표현식) {
case 표현식1:
switch //문의 표현식 = 표현식1이면 실행될 문
break;
case 표현식2:
switch //문의 표현식 = 표현식2이면 실행될 문
break;
defalut:
switch //문의 표현식과 일치하는 case 문이 없을 때 실행 (기본값 설정하기)
표현식과 case의 표현식이 일치하여 switch문이 실행되었다면.. 거기서 멈춰주어야합니다.
이 때 쓰는게 break입니다.
그렇지 않으면 얘가 브레이크 고장난 자동차마냥 블록이 끝날 때까지 실행해버림...(이걸 폴스루라고 한다)
그냥 if ... else로 해결이 가능하면 if...else문을 씁시다.
조건이 너무 많아서 가독성이 구려지면 switch 사용합시다
for문, while문, do ...while 문이 있습니다.
for (변수 선언문 or 할당문; 조건식; 증감식) {
조건식이 참일 경우 반복 실행될 문;
실행되는 순서: 변수 선언문 or 할당문(1회)→조건식 →(조건식이 참일 경우)→ 코드블록 실행→증감식
❗ 변언 선언문, 조건식, 증감식 중 어떤 식도 선언하지 않으면 무한루프가 됩니다.
// 무한루프
for (;;) {...}
var count = 0;
//count가 3보다 작을 때까지 코드 블록을 계속 반복 실행한다
while (count < 3) {
console.log(count); // 0 1 2
count ++
for 문은 반복 횟수가 명확할 때, while 문은 반복 횟수가 불명확할 때 자주 쓰입니다.
//무한루프
while(true){...}
🍧do...while문 : 코드 블록을 먼저 실행하고 조건식을 평가합니다.
조건식이 거짓이더라도 코드 블록은 무조건 한 번 이상 실행됩니다.
var count = 0;
//count가 3보다 작을 때까지 코드 블록을 계속 반복 실행
do {
console.log(count); // 0 1 2
count++;
}while (count < 3);
🍧continue 문은 반복문의 코드 블록을 현 지점에서 중단하고 증감식으로 실행 흐름을 옮깁니다.
break 문처럼 반복문을 탈출하진 않습니다.
var string = 'hello world'
var search = 'l'
var count = 0;
// 문자열은 유사 배열
for(var i =0; i < string.length; i++) {
// 'l'이 아닐 경우(조건식이 참일 경우) i++로 이동
// 'l'일 경우(조건식이 거짓일 경우) count++로 이동
if(string[i] !== search) continue;
count++;//
}
console.log(count); //3
for 문으로 다시 쓰기
for (var i = 0; i <string.length; i++) {
//'l'이면 카운트 증가
if(string[i] === search) count ++;
걍 for문 쓸게