๐ŸŸจ JavaScript/๊ฐœ๋…

[์ƒํ™œ์ฝ”๋”ฉ, ๋“œ๋ฆผ์ฝ”๋”ฉ, ์ฝ”๋”ฉ์•™๋งˆ] ์—ฐ์‚ฐ์ž(Operator)์™€ break, continue

Zoeeey 2022. 4. 14. 15:52

์—ฐ์‚ฐ์ž(Operator) ๋ฆฌ์ŠคํŠธ

! (not ์—ฐ์‚ฐ์ž) ๋ถ€์ •
&& (and ์—ฐ์‚ฐ์ž) ์ขŒ/์šฐ ๋ชจ๋‘ ์ฐธ์ผ๋•Œ ์ฐธ
|| (or ์—ฐ์‚ฐ์ž) ์ขŒ/์šฐ ์ค‘ ํ•˜๋‚˜๋ผ๋„ ์ฐธ์ผ๋•Œ ์ฐธ (* or ์—ฐ์‚ฐ์ž๊ฐ€ ๋‹ค์ˆ˜์ผ ๋•Œ ๋งˆ์ง€๋ง‰์— ๊ฐ€์žฅ ๋ณต์žกํ•œ ๋ณ€์ˆ˜๋ฅผ ๋„ฃ๋Š”๋‹ค)
== (๋™๋“ฑ ์—ฐ์‚ฐ์ž) ์ขŒ/์šฐ ๊ฐ™๋‹ค๋ฉด ์ฐธ
=== (์ผ์น˜ ์—ฐ์‚ฐ์ž)
์ขŒ/์šฐ๊ฐ€ ๋ฐ์ดํ„ฐํ˜•๊นŒ์ง€ ์ •ํ™•ํ•˜๊ฒŒ ๊ฐ™๋‹ค๋ฉด ์ฐธ
!=
๊ฐ™์ง€ ์•Š๋‹ค (==์™€ ์ •๋ฐ˜๋Œ€)
!==
๊ฐ™์ง€ ์•Š๋‹ค (===์™€ ์ •๋ฐ˜๋Œ€)
> ์ขŒ>์šฐ๋ผ๋ฉด ์ฐธ
>= ์ขŒ>=์šฐ๋ผ๋ฉด ์ฐธ
+= ์˜ค๋ฅธ์ชฝ ํ”ผ์—ฐ์‚ฐ์ž์˜ ๊ฐ’์„ ๋ณ€์ˆ˜์— ๋”ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•œ๋‹ค.

์กฐ๊ฑด๋ถ€ ์—ฐ์‚ฐ์ž (Conditional operator)

const name = 'Noran';
if (name === 'Noran') {
  console.log('Welcome, Noran!');
} else if (name === 'Paran') {
  console.log('Welcome, Paran!');
} else {
  console.log('Who are you?');
}

else if๋Š” else๋‚˜ if์™€ ๋‹ฌ๋ฆฌ ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

(* else๋Š” ์ƒ๋žต๊ฐ€๋Šฅํ•˜๋‹ค.)


์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž (Ternary operator)

console.log(name === 'Noran' ? 'yes' : 'no');
//condition ? value : value2;

? ์ „์— ๋ถ™์€ ์กฐ๊ฑด์ด ์ฐธ์ด๋ฉด ? ๋’ค์˜ ์‹์ด, ๊ฑฐ์ง“์ด๋ฉด ๋งˆ์ง€๋ง‰ ์‹์ด ์‹คํ–‰๋œ๋‹ค.

(* ๋˜๋„๋ก ๊ฐ„๋‹จํ•œ ์‹์ผ ๋•Œ ์‚ฌ์šฉํ•˜์ž.)


switch operator

const browser = 'IE'
switch (browser) {
  case 'IE' :
    console.log('ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š” ๋ธŒ๋ผ์šฐ์ €์ž…๋‹ˆ๋‹ค.');
    break; //break๋Š” ๋ฐ˜๋ณต๋ฌธ์„ ์ข…๋ฃŒํ•œ๋‹ค.
  case 'Chrome' :
  case 'Firefox' :
    console.log('๋ฐ˜๊ฐ‘์Šต๋‹ˆ๋‹ค.');
    break;
  default :
    console.log('๋ฐ˜๊ฐ‘์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋ˆ„๊ตฌ์„ธ์š”?');
    break;
}

๋˜‘๊ฐ™์€ ๋‚ด์šฉ์„ ์ถœ๋ ฅํ•  ๊ฒฝ์šฐ case๋ฅผ ์—ฐ๋‹ฌ์•„ ์‚ฌ์šฉํ•œ๋‹ค.

(* else if๊ฐ€ ์—ฌ๋Ÿฌ ์ฐจ๋ก€ ์‚ฌ์šฉ๋  ๊ฒฝ์šฐ switch๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹๋‹ค.)


while (๋ฐ˜๋ณต๋ฌธ_loop)

let i = 3; //์ผ๋ฐ˜์ ์œผ๋กœ i๋Š” index์˜ ์ค€๋ง์ด๋‹ค.
while (i > 0) {
  console.log(`while : ${i}`); //``๋กœ ๋ฌถ์œผ๋ฉด ๊ฐ„ํŽธํ•˜๊ฒŒ string(๋ฌธ์ž์—ด)๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
  i--;
}

do-while (๋ฐ˜๋ณต๋ฌธ)

let i = 3;
do {
  console.log(`do while : ${i}`);
  i--;
} while (i > 0);

do ๋’ค์˜ block scope๋ฅผ ๋จผ์ € ์‹คํ–‰ํ•œ ํ›„ while ์กฐ๊ฑด์„ ๊ฒ€์‚ฌํ•œ๋‹ค.


for (๋ฐ˜๋ณต๋ฌธ)

// for(begin; condition; step)
for (i = 3; i > 0; i--) {
  console.log(`for : ${i}`);
}

begin์„ ํ•œ๋ฒˆ๋งŒ ์‹คํ–‰ํ•œ ํ›„ step์„ ์‹คํ–‰, condition์„ ๊ฒ€์‚ฌ, step์„ ์‹คํ–‰.. ๋ฐ˜๋ณตํ•œ๋‹ค.

for (let i = 3; i > 0; i--) {
  console.log(`for : ${i}`);
}

fo๋ฌธ ๊ด„ํ˜ธ ์•ˆ์— ์ง€์—ญ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋‹ค. (inline variable declaration)

for (let i = 0; i < 10; i++) {
  for (let j = 0; j < 10; j++) {
    console.log(`i : ${i}, j : ${j}`);
  }
}

fo๋ฌธ ์•ˆ์— for๋ฌธ์„ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋‹ค. (nested loops)
์œ„์˜ ์—ฐ์‚ฐ์€ i๊ฐ€ 0์ผ ๋•Œ j๋ฅผ 0-9๊นŒ์ง€ ๋Œ๋ฆฌ๊ณ , i๊ฐ€ 1์ผ ๋•Œ j๋ฅผ 0-9๊นŒ์ง€ ๋Œ๋ฆฌ๊ณ .. (๋ฐ˜๋ณต) ํ•˜๋Š” ์‹์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค.
(* CPU์— ์ข‹์ง€ ์•Š์œผ๋ฏ€๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.)


break์™€ continue

  • break : ๋ฐ˜๋ณต๋ฌธ(loop)์„ ์™„์ „ํžˆ ๋๋‚ธ๋‹ค.
  • continue : ํ•ด๋‹น ๋ณ€์ˆ˜๋งŒ ๋๋‚ด๊ณ  ๋‹ค์Œ์œผ๋กœ ๋„˜์–ด๊ฐ€ ์‹คํ–‰ํ•œ๋‹ค.

์ถœ์ฒ˜ : ๋“œ๋ฆผ์ฝ”๋”ฉ https://www.youtube.com/@dream-coding / ์ฝ”๋”ฉ์•™๋งˆ https://www.youtube.com/@codingangma / ์ƒํ™œ์ฝ”๋”ฉ https://opentutorials.org/course/1