๋ชฉ์ฐจ
JS์์ ํ์ฉํ๋ case๋ฌธ์ ๋ํด์ ์์๋ณด์
1. case๋ฌธ
ํน์ ๊ฐ์ ๋ํ ์ฌ๋ฌ ์ต์ ์ด ์กด์ฌํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ค.
const option = 1;
switch (option) {
case 1:
console.log('1๋ฒ');
break;
case 2:
console.log('2๋ฒ');
break;
case 3:
console.log('3๋ฒ');
break;
default:
console.log('๋ฌดํจ');
}
>>> 1๋ฒ
switch ~ case ๋ฌธ์ ์ด์ฉํ ์์๋ ์์ ๊ฐ๋ค.
break
์ฃผ์ํ ์ ์ break ์ด๋ค.
break๋ฅผ ์ฌ์ฉํ์ง ์๋๋ค๋ฉด ํด๋น case์ ๋ค์ case๊น์ง ์ฐ์์ ์ผ๋ก ์ํ์ด ๋๋ค.
๋ฐ๋ผ์ ์ค๊ณ์๋๋๋ก ์ํ๋๋๋ก ํ๊ธฐ ์ํด์ ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
defalut
defalut๋ ๋ธ๋ก๋ฌธ ๊ฐ์ฅ ์๋์ ์์ฑํ๊ณ ์์ case์์ break๊ฐ ๋์ง ์๋ ์ด์ ๋ฌด์กฐ๊ฑด ์คํ์ด ๋๋ ๊ตฌ๋ฌธ์ด๋ค.
break ๋๋ฝ ํ์ฉ
break๋ฅผ ๋๋ฝํ์์ ๋ ๋ค์ case๊น์ง ์ด์ด์ง๋ ๊ฒ์ ์ ์ ์์๋ค.
์ด๋ฅผ ์ญ์ผ๋ก ์ด์ฉํ์ฌ ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ํ์ฉํ ์ ์๋ค.
์์ 1)
const lastNum = 2;
switch (lastNum) {
case 0: case 1:
team = 'A'; break;
case 2: case 3:
team = 'B'; break;
case 4: case 5:
team = 'C'; break;
case 6: case 7:
team = 'D'; break;
case 8: case 9:
team = 'E'; break;
defalut:
team = '์ค๋ฅ'; break;
}
console.log(team);
>>> B
์์ฒ๋ผ ์๋์ ์ผ๋ก case๋ฌธ์ ํ๋ฅด๊ฒ ํ์ฌ ์ํ๋ ๊ฒฐ๊ณผ๊ฐ ๋์ถ๋๋๋ก ํ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์๋ค.
ํ๋์ ์์๋ฅผ ๋ ์ดํด๋ณด์!
์์ 2)
const startMonth = 1;
let quarter = 0;
let birthday = '๋ถ๊ธฐ ๋ด ์์ผ์ :'
switch (startMonth) {
case 1:
birthday += ' Tom';
case 2:
case 3:
birthday += ' Ham';
birthday += ' Sam';
quarter = 1;
break;
case 4:
case 5:
birthday += ' Tery';
case 6:
quarter = 2;
break;
case 7:
birthday += ' Rooney';
case 8:
birthday += ' Mac';
case 9:
quarter = 3;
break;
case 10:
birthday += ' David';
birthday += ' Phill';
case 11:
case 12:
birthday += ' Denis';
quarter = 4;
break;
default:
birthday = '์ ํจํ์ง ์์';
}
console.log(quarter+birthday);
>>> 1๋ถ๊ธฐ ๋ด ์์ผ์ : Tom Ham Sam
์์ฒ๋ผ ๊ฐ์ ๋ํด๊ฐ๋ฉฐ ๋ฐํํ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์ฉํ ์ ์๋ค.
2. ๊ฐ์ฒด ํ์ฉ ๋ณํ case
์์ฒ๋ผ switch ~ case ๋ฌธ์ ์ด์ฉํ๋ ๊ฒ์ด ์๋ ๊ฐ์ฒด๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ๋ ์กด์ฌํ๋ค.
let menu = '๊น๋ฐฅ';
const price = {
๊น๋ฐฅ : '3000',
๋ก๋ผ๋ฉด : '4000',
๊น์น์ฐ๊ฐ : '6000',
๊ฐ๋น์ฐ : '7000',
}[menu] ?? '์ค๋ฅ';
console.log(price);
>>> 3000
๊ฐ์ฒด๋ ๋ง์ฝ ์กด์ฌํ์ง ์๋ key๊ฐ์ ์ธ๋ฑ์ฑํ์ ๋ undefined๋ฅผ ๋ฐํํ๋ค.
์ด๋ฅผ ์ด์ฉํด ?? (null ๋ณํฉ) ์ฐ์ฐ์๋ก case์ default๋ฅผ ๊ตฌํํ ์ ์๋ค.
'๐ | WEB DEV > Vanilla JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (21)_ ์ผ๊ธ ๊ฐ์ฒด (0) | 2023.03.11 |
---|---|
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (20)_ for ๋ฃจํ+ (0) | 2023.03.08 |
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (18)_ ์ ์ด๋ฌธ๊ณผ ์ข์ ์ฝ๋? (0) | 2023.03.04 |
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (17)_์ค์ฝํ (0) | 2023.03.03 |
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (16)_์์ํ์ ๊ณผ ์ฐธ์กฐํ์ (0) | 2023.03.01 |
๋๊ธ