if 문은 주어진 조건을 평가하고 그 결과에 따라 다른 코드 블록을 실행하는 조건문입니다.
{
// true :true, "문자열", 1, 2, "1", "2", [], {}
// false : fasle, 0, null, undefined, ""(빈문자열)
if(""){
document.write("실행되었습니다.(true)");
} else {
document.write("실행되었습니다.(false)");
}
}
주어진 조건인 "" (빈 문자열)은 false로 간주됩니다. 따라서 주어진 조건은 거짓이므로 else 블록이 실행됩니다. 결과적으로 "실행되었습니다.(false)"라는 문자열이 출력됩니다.
다중 if 문은 여러 개의 조건을 순차적으로 검사하고, 첫 번째로 참인 조건에 해당하는 코드 블록을 실행하는 조건문입니다.
{
const num = 100;
if(num == 90){
document.write("실행되었습니다.(num = 90)");
} else if(num == 95){
document.write("실행되었습니다.(num = 95)");
} else if(num == 100){
document.write("실행되었습니다.(num = 100)");
} else if(num == 105){
document.write("실행되었습니다.(num = 105)");
} else {
document.write("실행되었습니다.");
}
}
다중 if 문은 각각의 조건을 검사하고 첫 번째로 참인 조건에 해당하는 코드를 실행합니다. 여기서는 num이 100과 동일하기 때문에 해당 메시지가 출력됩니다.
중첩 if 문은 다른 if 문 내부에 있는 if 문으로, 내부 if 문은 외부 if 문의 조건이 참인 경우에만 실행됩니다.
{
const num = 100;
if(num == 100){
document.write("실행되었습니다.1")
if(num == 100){
document.write("실행되었습니다.2");
if(num == 100){
document.write("실행되었습니다.3");
}
}
} else {
document.write("실행되었습니다.4")
}
}
중첩 if 문은 다른 if 문 내부에 위치하며, 외부 if 문의 조건이 참이면 내부 if 문이 실행됩니다. 이러한 중첩 구조를 사용하여 더 복잡한 조건을 표현하고 실행 흐름을 제어할 수 있습니다.
if문을 생략하는 것은 if문 없이 조건에 따라 어떤 작업을 수행하는 방법을 말합니다.
삼항 연산자는 조건문을 한 줄로 표현할 수 있는 방법 중 하나입니다.
{
const num = 100;
// if(num == 100){
// document.write("실행되었습니다.(true)");
// }
if(num == 100) document.write("실행되었습니다.(true)");
// if(num == 100){
// document.write("실행되었습니다.(true)");
// } else {
// document.write("실행되었습니다.(false)");
// }
if(num == 100) document.write("실행되었습니다.(true)");
else document.write("실행되었습니다.(false)");
// 삼항 연산자(조건식 연산자)
(num == 100) ? document.write("true") : document.write("false");
}
첫 번째 if문:
주석 처리되어 있으므로 실행되지 않습니다.
두 번째 if문:
if(num == 100)는 num이 100과 동일한지를 검사합니다.
조건이 참이므로, "실행되었습니다.(true)"를 출력합니다.
이 코드 블록은 if문의 중괄호({})가 없어도 한 줄의 코드만 실행되기 때문에 중괄호를 생략한 것입니다.
세 번째 if문:
if(num == 100)는 다시 한 번 num이 100과 동일한지를 검사합니다.
여기서도 조건이 참이므로, "실행되었습니다.(true)"를 출력합니다.
이번에는 if문의 중괄호를 사용하여 코드 블록을 명시했습니다.
삼항 연산자(조건식 연산자):
(num == 100) ? document.write("true") : document.write("false");는 조건식 연산자를 사용하여 num이 100과 동일한 경우 "true"를 출력하고 그렇지 않은 경우 "false"를 출력합니다.
switch 문은 여러 가지 case와 break 문을 포함하고, 각각의 case에 대한 다른 동작을 정의합니다.
{
const num = 100;
switch(num){
case 90:
document.write("실행되었습니다.(90)")
break;
case 95:
document.write("실행되었습니다.(95)")
break;
case 100:
document.write("실행되었습니다.(100)")
break;
case 105:
document.write("실행되었습니다.(105)")
break;
default:
document.write("실행되었습니다.");
}
num 변수에 100이 할당되었습니다. switch 문은 num 값에 따라 다음 case 블록 중 하나를 실행합니다. num이 100과 일치하므로, "실행되었습니다.(100)"을 출력하고 break로 스위치 문을 종료합니다.
while문은 주어진 조건이 참인 동안 특정한 코드 블록을 반복해서 실행하는 제어 구조입니다.
{
let num = 1;
while(num<=10){
document.write(num);
num++;
}
num이 1에서 시작하여 10보다 작거나 같을 때까지 document.write(num)를 실행하고 num을 1씩 증가시킵니다. 이러한 반복 작업은 조건이 거짓이 될 때까지 계속됩니다.
do...while 문은 while 문과 비슷하지만, 코드 블록을 실행한 후 조건을 검사합니다
{
let num = 1;
do {
document.write(num);
num++;
} while(num<=10);
}
num이 1에서 시작하여 10보다 작거나 같을 때까지 document.write(num)를 실행하고 num을 1씩 증가시킵니다. 이것은 do 블록이 먼저 실행되고 조건이 검사되므로 최소한 한 번은 실행됩니다.
for 문은 주어진 조건에 따라 코드 블록을 반복 실행하는 제어 구조입니다.
{
for( let i=0; i<=10; i++){
document.write(i);
}
}
1.for 루프의 시작: let i = 0
i라는 변수를 선언하고 0으로 초기화합니다. i는 반복문에서 사용될 변수입니다.
2.조건 검사: i <= 10
반복문이 실행되기 전에 조건을 검사합니다. i가 10 이하인 경우에만 반복문이 계속 실행됩니다.
3.반복문 실행: document.write(i)
반복문의 각 반복에서 i의 현재 값을 출력합니다. 초기 값으로 0이 주어졌으므로 루프가 시작되면 0이 출력됩니다.
4.증가 단계: i++
각 반복이 끝날 때마다 i의 값을 1씩 증가시킵니다.
5반복: 0부터 10까지 출력
반복문은 i가 10 이하인 동안 실행됩니다. 따라서 0부터 10까지의 숫자가 차례대로 출력됩니다.
break문 조건에 따라 반복을 중단할 때 사용됩니다.
{
for (let i=1; i<10; i++){
if(i == 5){
break;
}
document.write(i);
}
이 코드는 i가 5와 같을 때 break문을 실행하여 반복문을 종료합니다.
continue문을 만나면 현재 반복의 남은 코드는 실행되지 않고, 다음 반복으로 넘어가게 됩니다.
{
for (let i=1; i<10; i++){
if( i == 5){
continue;
}
document.write(i);
}
}
결과값은 i가 5일 때 현재 반복을 종료하므로, 5는 출력되지 않고 나머지 숫자들만 출력됩니다.