if (조건부분) {
동작부분
}
👉 조건부분이 맞으면 동작부분이 실행 됨.
let temperature = 110;
if (temperature <= 0) {
console.log('물이 업니다.')
} else if (temperature < 100) {
console.log('물이 얼지도 끓지도 않습니다.')
} else {
console.log('물이 끓습니다.')
}
삼항 연산자 사용하기
const temp = 120;
let result =
temp <= 0
? '물이 업니다.'
: temp < 100
? '물이 얼지도 끓지도 않습니다.'
: '물이 끓습니다.';
console.log(result);
switch (비교할_값) {
case 조건값_1:
동작부분;
break; // 👉 조건이 맞으면 switch문을 빠져나옴
case 조건값_2:
동작부분;
break;
default: // 👉 조건식을 만족하지 않을 때
동작부분;
}
let myChoice = 2;
switch(myChoice) {
case 1:
console.log('1을 선택하셨습니다.')
break;
case <2:
console.log('2를 선택하셨습니다.')
break;
case 3:
console.log('3을 선택하셨습니다.')
break;
case 4:
console.log('4를 선택하셨습니다.')
break;
default:
console.log('1에서 4 사이의 숫자를 선택해 주세요.')
}
👉 범위
를 만족하는 조건식을 만들 때
👉 조건식에서 반드시 등호 세 개를 입력해야 함
👉 특정한 값
을 만족하는 조건식을 만들 때
👉 암시적 형변환 허용하지 않음 ❌❌❌❌❌
---> 값들을 비교할 때 자료형을 엄격하게 구분
문자 '2'와 숫자 2는 다름!
따라서 if문 조건식에 등호 세 개를 입력해야 한다.
let myChoice = '2';
switch(myChoice) {
case 1:
console.log('토끼를 선택한 당신, ...');
break;
case 2:
console.log('고양이를 선택한 당신, ...');
break;
case 3:
console.log('코알라를 선택한 당신, ...');
break;
case 4:
console.log('강아지를 선택한 당신, ...');
break;
default:
console.log('1에서 4사이의 숫자를 선택해 주세요.');
}
if (myChoice === 1) {
console.log('토끼를 선택한 당신, ...');
} else if (myChoice === 2) {
console.log('고양이를 선택한 당신, ...');
} else if (myChoice === 3) {
console.log('코알라를 선택한 당신, ...');
} else if (myChoice === 4) {
console.log('강아지를 선택한 당신, ...');
} else {
console.log('1에서 4사이의 숫자를 선택해 주세요.');
}
if문의 조건식을 등호 두 개로 비교할 경우 서로 다른 값이 나옴
let myChoice = '2';
switch(myChoice) {
case 1:
console.log('토끼를 선택한 당신, ...');
break;
case 2:
console.log('고양이를 선택한 당신, ...');
break;
case 3:
console.log('코알라를 선택한 당신, ...');
break;
case 4:
console.log('강아지를 선택한 당신, ...');
break;
default:
console.log('1에서 4사이의 숫자를 선택해 주세요.');
}
if (myChoice == 1) {
console.log('토끼를 선택한 당신, ...');
} else if (myChoice == 2) {
console.log('고양이를 선택한 당신, ...');
} else if (myChoice == 3) {
console.log('코알라를 선택한 당신, ...');
} else if (myChoice == 4) {
console.log('강아지를 선택한 당신, ...');
} else {
console.log('1에서 4사이의 숫자를 선택해 주세요.');
}
switch ---> 1에서 4사이의 숫자를 선택해 주세요.
if ---> 고양이를 선택한 당신, ...
for (초기화부분; 조건부분; 추가동작부분) {
동작부분
}
👉 초기화 부분에서 생성한 변수는 for문의 로컬 변수다
👉 for문 안에서 생성한 로컬 변수이기 때문에 for 반복문이 종료되고 나서 for 반복문 밖에서 변수를 사용하려고 하면 오류가 발생한다
👉 for문의 소괄호 안쪽은 반드시 세미콜론 2개가 필요하다
for (let i = 1; i <= 10; i++) {
console.log(`${i} 반복 작성중입니다.`)
}
✅ 1부터 100까지 2로 나눴을 때 나머지가 0인 수 출력
for (let i = 1; i <= 100; i++) {
if(i % 2 === 0) {
console.log(i)
}
}
✅ 1부터 50의 수 * 2
for (let i =1; i <= 50; i++) {
console.log(i * 2)
}
✅ 2부터 100의 수 + 2씩 증가
for (let i = 2; i <= 100; i += 2) {
console.log(i)
}
✅ 문자 + 문자
let star = '*'
let msg = ''
for (let i = 1; i <= height; i++) {
msg += star;
console.log(msg)
}
function printTriangle(height) {
for (let i = 1; i <= height; i++) {
let result = '';
for (let j = 1; j <= i; j++) {
result += '*'
}
console.log(result);
}
}
조건부분이 ture로 판단 되는 동안 반복되며 false가 되는 순간 종료 됨.
while (조건부분) {
동작부분
}
let i =1; 👉 반복문 밖에서 글로벌 변수 작성
while (i <= 10) {
console.log(`${i} 반복 작성중입니다.`)
i++; 👉 추가 동작 부분 안에 작성
}
✅ 2로 나누었을 때 나머지가 0이 아닌 경우 === 나머지가 1인 경우
let i = 1;
while (i <= 100) {
if(i % 2 !== 0){
cosole.log(i);
}
i++;
<}
✅ 1부터 50의 수 * 2 - 1
let i = 1;
while (i <= 50) {
console.log(i * 2 - 1);
i++;
}
✅ 1부터 100의 수 + 2씩 증가
let i = 1;
while (i <= 100) {
console.log(i);
i += 2;
}
const N = 180<;
let i = 1;
let count = 0;
while (i <= N) {
if (N % i === 0) {
console.log(i);
count++;
}
i += 1;
}
console.log(`${N}의 약수는 총 ${count}개입니다.`);
✨ break
: 이후의 동작을 멈춤
✨ continue
: 실행중인 동작을 건너 뛰고 다음 동작으로 넘어감 (무시 됨)
for (let i = 1; i <= 10; i++) {
if (i % 2 === 0) {
continue;
}
console.log(i);
}
👉 짝수값은 continue로 인해 건너 뛰게 됨으로 홀수값만 출력된다
let i = 1;
while (i <= 10) {
if(i % 2 !== 0) {
i++;
continue;
}
console.log(i);
i++;
}
👉 홀수값은 continue로 인해 건너 뛰게 됨으로 짝수값만 출력된다
while문 안의 if문에 continue 사용 시 무한 루프에 빠지지 않는지 확인이 필요!!
let i = 1;
while(i <= 10){
if(i % 2 !== 0){
continue;
}
console.log(i);
i++;
}
👉 1은 홀수이기 때문에 continue가 실행되면 다시 i값으로 반복문이 실행되는데 이 때, i = 1로 반복문이 재실행 된다. 즉, 1의 값으로 무한루프에 빠지게 됨.
while(i <= 10){
if(i % 2 !== 0){
i++; 👉 추가!
continue;
}
console.log(i);
i++;
}
let i = 1;
while (i <= 20) {
if (i === 5) {
break;
}
console.log(i);
i++;
}
👉 i값이 5일 경우 break문에 의해 즉시 반복문 종료 ---> 1부터 4까지 출력
for (let i = 1; i <= 50; i++) {
if (i % 2 !== 0) {
continue;
}
console.log(i);
i++;
}
👉 1부터 50까지의 수 중 짝수만 출력
1, 1, 2, 3, 5, 8, 13,21, 34, 55, ...
우선 피보나치 수열의 1번 항과 2번 항은 각각 1입니다. 3번 항부터는 바로 앞 두 항의 합으로 계산됩니다. 예를 들어서 3번 항은 1번 항(1)과 2번 항(1)을 더한 2이며, 4번 항은 2번 항(1)과 3번 항(2)을 더한 3입니다.
반복문을 활용해서 피보나치 수열의 첫 50개 항을 차례대로 출력하는 프로그램을 작성해 보세요. for문과 while문 중 어떤 반복문을 사용해도 상관없습니다.
let pre = 0;
let cur = 1;
for (let i = 1; let <= 50; i++) {
console.log(cur);
let temp = pre; // 0
pre = cur; // 1
cur = temp + cur; // 0 + 1 = 1
}