๐ก 1. ๋ธ๋ก๋ฌธ(Block statemet/Compound statement)
- ๋ธ๋ก๋ฌธ์ 0๊ฐ ์ด์์ ๋ฌธ๋ค์ ์ค๊ดํธ๋ก ๋ฌถ์ ๊ฒ์ผ๋ก ์ฝ๋ ๋ธ๋ก ๋๋ ๋ธ๋ก์ด๋ผ๊ณ ๋ถ๋ฆ ๋๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์๋ ๋ธ๋ก๋ฌธ์ ํ๋์ ๋จ์๋ก ์ทจ๊ธํฉ๋๋ค. ๋ธ๋ก๋ฌธ์ ๋ค๋ฅธ ๋ฌธ๋ค๊ณผ๋ ๋ค๋ฅด๊ฒ ๋์ ์ธ๋ฏธ ์ฝ๋ก (;)์ ๋ถ์ด์ง ์์ต๋๋ค.
// ๋ธ๋ก๋ฌธ
{
let name = 'apple';
console.log(name);
}
// ๋ธ๋ก๋ฌธ ๊ฒธ ๋ฐ๋ณต๋ฌธ
for(let i = 0; i < 10; i++){
console.log(i);
}
// ๋ธ๋ก๋ฌธ ๊ฒธ ํจ์
let func = function(a, b){
return a * b;
}
๐ก 2. ์กฐ๊ฑด๋ฌธ(conditional statement)
- ์กฐ๊ฑด๋ฌธ์ ๋ฌธ ์์ ์ด๋ ํ ์กฐ๊ฑด์ ๊ฑธ์ด ๋๊ณ ๊ทธ ์กฐ๊ฑด์ ๋ถํฉํ ๊ฒฝ์ฐ์ ๋ฌธ์ ๋ค์ด๊ฐ ์ ์๋๋ก ํ๋ ๊ฒ์
๋๋ค.
์๋ฅผ ๋ค์ด ๋กค๋ฌ์ฝ์คํฐ๋ฅผ ํ๋ ค๋ฉด ํค๊ฐ 110cm ์ด์์ด ๋์ด์ผ ํฉ๋๋ค. ๊ทธ๋ผ ์ฌ๊ธฐ์ ํค๊ฐ 110cm ์ด์์ด ์กฐ๊ฑด์ ํด๋นํ๊ณ , ๊ทธ ์กฐ๊ฑด์ ๋ถํฉ์ ํ๋ฉด ๋กค๋ฌ์ฝ์คํฐ๋ฅผ ํ ์ ์๊ฒ ๋ฉ๋๋ค.
- ์๋ฐ์คํฌ๋ฆฝํธ์์ ์กฐ๊ฑด๋ฌธ์ 2๊ฐ์ง๊ฐ ์๋๋ฐ if๋ฌธ๊ณผ switch๋ฌธ์ ๋๋ค.
๐ฃ 2.1 if๋ฌธ
- if๋ฌธ์ ์ฃผ์ด์ง ์กฐ๊ฑด์์ ๋ถํฉํ๋ฉด ๋ฌธ ์์ ๋ค์ด๊ฐ ์ฝ๋๋ฅผ ์คํํ๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ทธ ๋ฌธ ์์ ์ฝ๋๋ ์คํ๋์ง ์์ต๋๋ค. ๋ง์ฝ ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ boolean ๊ฐ์ด ์๋๋ผ๋ฉด ๊ฐ์ ๋ณํ๋์ด true ํน์ false๋ก ๋ฐํ๋ฉ๋๋ค.
// if else๋ฌธ
if(์กฐ๊ฑด์){
// ์กฐ๊ฑด์์ด true์ด๋ฉด ์ด ๋ธ๋ก์ด ์คํ๋ฉ๋๋ค.
}else{
// ์ ์กฐ๊ฑด์์ด false๋ผ๋ฉด ์ด ๋ธ๋ก์ด ์คํ๋ฉ๋๋ค.
}
// if else๋ฌธ ์์ 1
let height = 180;
if(height > 110){
console.log('๋กค๋ฌ์ฝ์คํฐ ํ์น!');
}else{
console.log('๋กค๋ฌ์ฝ์คํฐ ๋ชปํใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
');
}
// '๋กค๋ฌ์ฝ์คํฐ ํ์น!'
// if else๋ฌธ ์์ 2
let height = 100;
if(height > 110){
console.log('๋กค๋ฌ์ฝ์คํฐ ํ์น!');
}else{
console.log('๋กค๋ฌ์ฝ์คํฐ ๋ชปํใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
');
}
// '๋กค๋ฌ์ฝ์คํฐ ๋ชปํใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
'
- if ์์ ์กฐ๊ฑด์์ ๋ถํฉํ์ง ์๋ ๋ชจ๋ ๊ฐ๋ค์ else๋ฌธ์ ์คํํ๊ฒ ๋ฉ๋๋ค.
// ์กฐ๊ฑด์์ด ์ฌ๋ฌ๊ฐ ์๋ ๊ฒฝ์ฐ
// if .. else if .. else
if (์กฐ๊ฑด์1){
// ์กฐ๊ฑด์1์ด true์ด๋ฉด ์ด ๋ธ๋ก ์คํ
}else if (์กฐ๊ฑด์2){
// ์กฐ๊ฑด์1์ด false์ด๊ณ ์กฐ๊ฑด์2๊ฐ trued์ด๋ฉด ์ด ๋ธ๋ก ์คํ
}else {
// ์กฐ๊ฑด์1, ์กฐ๊ฑด์2๊ฐ false์ด๋ฉด ์ด ๋ธ๋ก ์คํ
}
// if .. else if .. else ์์ 1
let score = 98;
if (score > 90){
console.log("you're A!");
}else if (score > 80 && score <= 90){
console.log("you're B!");
}else {
console.log("you're C!");
}
// "you're A!"
// if .. else if .. else ์์ 2
let score = 88;
if (score > 90){
console.log("you're A!");
}else if (score > 80 && score <= 90){
console.log("you're B!");
}else {
console.log("you're C!");
}
// "you're B!"
- ์กฐ๊ฑด์์ ์ฌ๋ฌ ๊ฐ ๋ง๋ค๊ณ ์ถ์ ๊ฒฝ์ฐ์๋ else if๋ฅผ ์ด์ฉํด์ ์ฌ๋ฌ ๊ฐ์ ์กฐ๊ฑด์์ ์ถ๊ฐํ ์ ์์ต๋๋ค. else if๋ ์ฌ๋ฌ ๊ฐ ์ถ๊ฐ ๊ฐ๋ฅํ์ง๋ง if, else๋ ๋ฌด์กฐ๊ฑด ํ ๊ฐ(else๋ 0๊ฐ๋ ๊ฐ๋ฅ)๋ง ์กด์ฌํด์ผ ํฉ๋๋ค.
// ์กฐ๊ฑด์์์ ๋ฐํ๋ ๊ฐ์ด boolean์ด ์๋ ๊ฒฝ์ฐ ๊ฐ์ ๋ณํ์ ํตํด์ booleanํ์
์ผ๋ก ๋ณ๊ฒฝ
let num = 4;
// 4 % 2๋ฅผํ๋ฉด 0์ด ๋์ค๋๋ฐ, 0์ booleanํ์
์ผ๋ก ๊ฐ์ ๋ณํํ๋ฉด false๊ฐ ๋๋ค.
if(num % 2){
console.log("ํ์");
}else {
console.log("์ง์");
}
// ์ง์
๐ก 3. switch ๋ฌธ
- switch๋ฌธ์ switch ๋ฌธ์ ํํ์์์ ๋ฐํ๋ ๊ฐ์ ๋ง๋ case๋ฌธ์ผ๋ก ์ด๋ํด์ ์คํ์ํต๋๋ค. ๋ง์ฝ ๋ง๋ case๋ฌธ์ด ์๋ค๋ฉด default๋ฌธ์ผ๋ก ์ด๋ํ๊ฒ ๋ฉ๋๋ค.
switch (ํํ์) {
case ํํ์1:
switch ๋ฌธ์ ํํ์๊ณผ ํํ์1์ด ์ผ์นํ๋ฉด ์คํ๋จ.
break;
case ํํ์2:
switch ๋ฌธ์ ํํ์๊ณผ ํํ์2๊ฐ ์ผ์นํ๋ฉด ์คํ๋จ.
break;
default:
switch ๋ฌธ์ ํํ์๊ณผ ์ผ์นํ๋ case๊ฐ ์์ ๊ฒฝ์ฐ ์คํ๋จ.
}
// ์์
let animal = 'Dog';
switch (animal) {
case 'Dog':
console.log('๋๋์ด์
๋๋ค.');
break;
case 'Cat':
console.log('๊ณ ์ํฌ์
๋๋ค.');
break;
default:
console.log('๋๋ง ๋๋์ด, ๊ณ ์ํฌ ์์ด.');
}
// '๋๋์ด์
๋๋ค.'
// ์์ 2 break๋ฅผ ์ฐ์ง ์์ ๊ฒฝ์ฐ
let animal = 'Dog';
switch (animal) {
case 'Dog':
console.log('๋๋์ด์
๋๋ค.');
case 'Cat':
console.log('๊ณ ์ํฌ์
๋๋ค.');
default:
console.log('๋๋ง ๋๋์ด, ๊ณ ์ํฌ ์์ด.');
}
// '๋๋์ด์
๋๋ค.'
// '๊ณ ์ํฌ์
๋๋ค.'
// '๋๋ง ๋๋์ด, ๊ณ ์ํฌ ์์ด.'
- switch ๋ฌธ์ if๋ฌธ๊ณผ๋ ๋ค๋ฅด๊ฒ ์กฐ๊ฑด์ ๋ง๋ case๋ฌธ๋ถํฐ ์์๋๋ก ์คํ์ด ๋๋ ๊ฒ์ ๋๋ค. ๊ทธ๋์ break ๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ค๋ฅธ case๋ค์ ์คํ์ํค์ง ์๊ฒ ๋ง๋ ๊ฒ์ ๋๋ค.
let name = 'Rose';
switch(name) {
case 'Dog': case 'Cat': case 'Bird':
console.log('๋๋ฌผ์
๋๋ค.');
break;
case 'Tree': case 'Rose': case 'Sunflower':
console.log('์๋ฌผ์
๋๋ค.');
break;
default:
console.log('๋๋ฌผ๊ณผ ์๋ฌผ์ด ์๋๋๋ค.');
}
// '์๋ฌผ์
๋๋ค.'
- ์ ์์์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ์ case๋ฅผ ํ๋์ ๋ฌธ์ผ๋ก ์์ฑํ ์ ๋ ์์ต๋๋ค.
๐ ์ ๋ฆฌ
- ๋ธ๋ก๋ฌธ์ ์ฝ๋๋ฅผ ์ค๊ดํธ๋ก ๋ฌถ์ ๊ฒ์ ์๊ธฐํ๋ฉฐ, ์๋ฐ์คํฌ๋ฆฝํธ์์๋ ๋ธ๋ก๋ฌธ์ ํ๋์ ๋จ์๋ก ๋ณธ๋ค.
- ์กฐ๊ฑด๋ฌธ์๋ if๋ฌธ๊ณผ switch๋ฌธ์ด ์๋ค.
- if๋ฌธ์ ์กฐ๊ฑด์์ด true์ด๋ฉด if๋ฌธ ์์ ์ฝ๋๋ฅผ ์คํํ๋ค. ์กฐ๊ฑด์์ ์ฌ๋ฌ ๊ฐ ์ถ๊ฐํ๊ณ ์ถ์ผ๋ฉด else if๋ฅผ ์ด๋ค.
- if, else if์ ์กฐ๊ฑด์ด ๋ถํฉํ์ง๋ ์์ ๊ฒฝ์ฐ์๋ ์ด๋ ํ ์ฝ๋๋ฅผ ์คํ์ํค๊ณ ์ถ๋ค๋ฉด else๋ฅผ ์ด๋ค.
- switch๋ฌธ์ switch๋ฌธ ์์ ์กฐ๊ฑด์์์ ๋ฐํ๋ ๊ฐ์ ๋ง๋ case๋ฅผ ์ฐพ์๊ฐ ์์๋๋ก ์คํ์ํจ๋ค.
- ๋ง์ฝ ์์๋๋ก ์คํ์ ์ํค๋ ๊ฒ ์๋๊ณ ํด๋น case๋ง ์คํ์ํค๊ณ ์ถ๋ค๋ฉด break๋ฌธ์ ์ฌ์ฉํ๋ค.
- if๋ฌธ๊ณผ switch๋ฌธ์ ์ฐจ์ด๋ if๋ฌธ์ ์กฐ๊ฑด์์ด ํด๋นํ๋ ์ฝ๋๋ง ์คํ์ํค๊ณ switch๋ฌธ์ ํด๋นํ๋ case๋ถํฐ ์์ฐจ ์คํํ๋ค.
- switch๋ฌธ๋ณด๋ค๋ if๋ฌธ์ด ์ฝ๋์ ๊ฐ๊ฒฐ์ฑ, ์ฌ์ฉ๋ฒ์ด ๊ฐ๋จํ๋ฏ๋ก if๋ฌธ์ ์ฌ์ฉํ๋ ๊ฒ์ ์ถ์ฒํ๋ค.
๊ธด ๊ธ ์ฝ์ด์ฃผ์
์ ๊ฐ์ฌํฉ๋๋ค :)
ํ๋ฆฐ ๋ด์ฉ์ด ์๊ฑฐ๋, ๋ง๋ถ์ผ ๋ด์ฉ์ด ์๋ค๋ฉด ์ธ์ ๋ ์ง ๋๊ธ ๋ฌ์์ฃผ์ธ์!
์ ๊ธ์ด ์กฐ๊ธ์ด๋๋ง ์ฝ์ผ์ ๋ถ๋ค์๊ฒ ๋์์ด ๋๋๋ก ๋
ธ๋ ฅํ๊ฒ ์ต๋๋ค
๋ค์ ํธ์ ๋ดฌ์~
'Front-End > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JavaScript] 08. ํ์ ๋ณํ (0) | 2022.01.27 |
---|---|
[JavaScript] 07. ๋ฐ๋ณต๋ฌธ (0) | 2022.01.26 |
[JavaScript] 05. ์ฐ์ฐ์ (0) | 2022.01.24 |
[JavaScript] 04. ๋ฐ์ดํฐ ํ์ _๊ฐ์ฒดํ์ (2) | 2022.01.21 |
[JavaScript] 03. ๋ฐ์ดํฐ ํ์ _์์ํ์ (0) | 2022.01.20 |