[JS]while/for

XIXIยท2022๋…„ 6์›” 10์ผ
0

๋Œ€๊ตฌAI์Šค์ฟจ

๋ชฉ๋ก ๋ณด๊ธฐ
32/57
post-thumbnail

๐ŸŒฑ while

โœ๏ธwhile

์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ผ ๋•Œ ์‹คํ–‰๋˜๋Š” ๋ฐ˜๋ณต๋ฌธ. ๋ฌธ์žฅ์•ˆ์ด ์‹คํ–‰๋˜๊ธฐ ์ „์— ์ฐธ, ๊ฑฐ์ง“์„ ํŒ๋‹จ

let i = 0
    while(true){
      alert(`${i}๋ฒˆ์งธ ๋ฐ˜๋ณต๋ฌธ์ž…๋‹ˆ๋‹ค.`);
      i = i + 1;
    }

while ๊ณ„์† ์ฆ๊ฐํ•˜์—ฌ ๋Š์ž„ ์—†์ด ๋ฐ˜๋ณตํ•จ.

let i = 0
    while(confirm('๊ณ„์† ์ง„ํ–‰์„ ์›ํ•˜์‹œ๋ฉด ํ™•์ธ์„ ๋ˆ„๋ฅด์„ธ์š”.')){
      alert(`${i}๋ฒˆ์งธ ๋ฐ˜๋ณต๋ฌธ์ž…๋‹ˆ๋‹ค.`);
      i = i + 1;
    }


confirm ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ์กฐ๊ฑด ๋ถ€์—ฌ
ํ™•์ธ์„ ๋ˆ„๋ฅผ ๊ฒฝ์šฐ true ๊ฐ’ ๋ฐœ์ƒ ์‹คํ–‰๋ฌธ์ด ์‹คํ–‰๋˜๊ณ , ์ทจ์†Œ๋ฅผ ๋ˆ„๋ฅผ ๊ฒฝ์šฐ false ๊ฐ’์ด ๋ฐœ์ƒํ•ด ์‹คํ–‰๋ฌธ ์‹คํ–‰ ์•ˆ๋Œ

โœ๏ธdo while

do ๋ฐ˜๋ณต๋ฌธ์€ ์ตœ์†Œ ํ•œ๋ฒˆ์€ ๋ฐ˜๋ณต.

do {
  ์‹คํ–‰๋ฌธ;
} while (์กฐ๊ฑด);

์‹คํ–‰๋ฌธ์ด ํ•œ๋ฒˆ์€ ์‹คํ–‰์ด ๋˜๊ณ , ์กฐ๊ฑด์ด false๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•จ.

๐ŸŒฑ for

โœ๏ธfor

์–ด๋–ค ํŠน์ •ํ•œ ์กฐ๊ฑด์ด ๊ฑฐ์ง“์œผ๋กœ ํŒ๋ณ„๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต

for ([์ดˆ๊ธฐ๋ฌธ]; [์กฐ๊ฑด๋ฌธ]; [์ฆ๊ฐ๋ฌธ]) {
  ์‹คํ–‰๋ฌธ
 }
  1. ์ดˆ๊ธฐ๋ฌธ์ด ์กด์žฌํ•˜๋ฉด ์ดˆ๊ธฐ๋ฌธ์ด ์‹คํ–‰. ๋ณดํ†ต 1, ๋ฐ˜๋ณต๋ฌธ ์นด์šดํ„ฐ๋กœ ์ดˆ๊ธฐ ์„ค์ •. ๋ณ€์ˆ˜๋กœ ์„ ์–ธ ๊ฐ€๋Šฅ
  2. ์กฐ๊ฑด๋ฌธ์€ ์กฐ๊ฑด์„ ๊ฒ€์‚ฌ. ๋งŒ์•ฝ ์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ด๋ผ๋ฉด, ๋ฐ˜๋ณต๋ฌธ ์‹คํ–‰ ๊ฐ€๋Šฅ. ๋งŒ์•ฝ ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง“์ด๋ผ๋ฉด, for๋ฌธ์€ ์ข…๊ฒฐ
  3. ์‹คํ–‰๋ฌธ ์‹คํ–‰. ์‹คํ–‰๋ฌธ์ด ๋ณต์ˆ˜์ผ ๊ฒฝ์šฐ { }๋กœ ๋ฌธ์žฅ์„ ๋ฌถ์Œ
  4. ์ฆ๊ฐ๋ฌธ์ด ์กด์žฌํ•˜๋ฉด ์‹คํ–‰ ํ›„, 2๋ฒˆ์งธ ๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ

โœ๏ธ์ค‘์ฒฉ for๋ฌธ ์‚ผ๊ฐํ˜• ๋ณ„์ฐ๊ธฐ

for(let i =0; i <=10; i++) {
  for(let j = 0; j <= i ; j++) {
  	document.write('*');
  }
document.write('<br>')
}

๋ฐ”๊นฅ for๋ฌธ์€ ์œ„์—์„œ๋ถ€ํ„ฐ ์•„๋ž˜๋กœ 10๊ฐœ ํ–‰ ๋ฐ˜๋ณต ์˜๋ฏธ. ๊ฐ ํ–‰ ์ค„๋ฐ”๊ฟˆ ํ•„์š”.
์•ˆ์ชฝ for๋ฌธ์€ 1๊ฐœ ํ–‰์—์„œ ์ž‘์„ฑ๋  ๋ณ„์˜ ๊ฐœ์ˆ˜ ์˜๋ฏธ. ๋•Œ๋ฌธ์— ์•ˆ์ชฝ for๋ฌธ์˜ ์กฐ๊ฑด์€ ๋ฐ”๊นฅ for๋ฌธ์˜ ๊ธธ์ด๋งŒํผ ์‹คํ–‰์‹œ์ผœ์•ผํ•˜๋ฏ€๋กœ j <= i ์กฐ๊ฑด ๋ถ€์—ฌ.

๐ŸŒฑ ํ•จ์ˆ˜

  • ์ต๋ช…ํ•จ์ˆ˜
  • ์„ ์–ธ์  ํ•จ์ˆ˜
  • ํ”„๋กœ์‹œ์ € ํ•จ์ˆ˜
  • ์„ ์–ธ์  ํ•จ์ˆ˜

โœ๏ธํ•จ์ˆ˜ ์ •์˜

ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋ ค๋Š” ๋ฒ”์œ„ ๋‚ด์—์„œ ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•ด์•ผํ•จ.

ํ•จ์ˆ˜์„ ์–ธ

function ํ•จ์ˆ˜์ด๋ฆ„(๋งค๊ฐœ๋ณ€์ˆ˜) {
  return ๋งค๊ฐœ๋ณ€์ˆ˜ * ๋งค๊ฐœ๋ณ€์ˆ˜;
}
  • ํ•จ์ˆ˜์˜ ์ด๋ฆ„
  • ๊ด„ํ˜ธ ์•ˆ ๋งค๊ฐœ๋ณ€์ˆ˜
    ์œ„ ํ•จ์ˆ˜๋Š” ํ•˜๋‚˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ์ธ์ˆ˜ (๋งค๊ฐœ๋ณ€์ˆ˜) ์ž์ฒด๋ฅผ ๊ณฑํ•ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์žฅ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Œ.
    ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๊ฐ’์œผ๋กœ ํ•จ์ˆ˜์— ์ „๋‹ฌ
  • ์ค‘๊ด„ํ˜ธ { } ์•ˆ์— ์‹คํ–‰๋ฌธ
  • return์€ ํ•จ์ˆ˜์— ์˜ํ•ด ๋ฐ˜ํ™˜๋œ ๊ฐ’์„ ์ง€์ •

ํ•จ์ˆ˜ ํ‘œํ˜„์‹

ํ•จ์ˆ˜ ํ‘œํ˜„์‹( function expression)์— ์˜ํ•ด ํ•จ์ˆ˜๊ฐ€ ๋งŒ๋“ค์–ด ์งˆ ์ˆ˜ ์žˆ์Œ
์ต๋ช…์ด๋ผ๊ณ  ํ•จ. ๋ชจ๋“  ํ•จ์ˆ˜๊ฐ€ ์ด๋ฆ„์„ ๊ฐ€์งˆ ํ•„์š”๋Š” ์—†๋‹ค

var ๋ณ€์ˆ˜์ด๋ฆ„ = function(๋งค๊ฐœ๋ณ€์ˆ˜) { return ๋งค๊ฐœ๋ณ€์ˆ˜ * ๋งค๊ฐœ๋ณ€์ˆ˜ };
var ๋ณ€์ˆ˜์ด๋ฆ„2 = ๋ณ€์ˆ˜์ด๋ฆ„(2) // x ์˜ ๊ฐ’์€ 4
var ๋ณ€์ˆ˜์ด๋ฆ„ = function ํ•จ์ˆ˜์ด๋ฆ„ (๋งค๊ฐœ๋ณ€์ˆ˜) { return ๋งค๊ฐœ๋ณ€์ˆ˜ * ๋งค๊ฐœ๋ณ€์ˆ˜ };
var ๋ณ€์ˆ˜์ด๋ฆ„2 = ๋ณ€์ˆ˜์ด๋ฆ„(2) // x ์˜ ๊ฐ’์€ 4

ํ•˜์ง€๋งŒ, ํ•จ์ˆ˜ ํ‘œํ˜„์‹์—์„œ ํ•จ์ˆ˜์˜ ์ด๋ฆ„์„ ์ง€์ • ํ•  ์ˆ˜ ์žˆ์Œ
ํ•จ์ˆ˜๋‚ด์—์„œ ์ฐธ์กฐํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๊ฑฐ๋‚˜, ํ•จ์ˆ˜๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Œ

ํ•จ์ˆ˜ ํ˜ธ์ถœ

ํ•จ์ˆ˜ ์ •์˜์™€ ํ•จ์ˆ˜ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ๋‹ค๋ฅด๋‹ค.
ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์€ ํ•จ์ˆ˜์˜ ์ด๋ฆ„์„ ์ง€์–ด์ฃผ๊ณ , ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋  ๋•Œ ๋ฌด์—‡์„ ํ• ์ง€ ์ง€์ • ํ•ด์ฃผ๋Š” ๊ฒƒ ๋ฟ.
ํ•จ์ˆ˜๋ฅผ ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฑด ํ•จ์ˆ˜ ํ˜ธ์ถœ๋กœ ํ•จ.

ํ•จ์ˆ˜์ด๋ฆ„(๊ฐ’);

ํ•ด๋‹น ํ•จ์ˆ˜์ด๋ฆ„์ธ ํ•จ์ˆ˜์— ๊ฐ’์ด ์ „๋‹ฌ๋˜์–ด ์‹คํ–‰๋œ ํ•จ์ˆ˜๊ฐ’์ด ๋ฐ˜ํ™˜

ํ•จ์ˆ˜๋Š” ํ˜ธ์ถœ๋  ๋•Œ ๋ฒ”์œ„ ๋‚ด์— ์žˆ์–ด์•ผ ํ•จ.
ํ•˜์ง€๋งŒ ํ•จ์ˆ˜์˜ ์„ ์–ธ์€ ํ˜ธ์ด์ŠคํŒ… ๋  ์ˆ˜ ์žˆ์Œ

console.log(ํ•จ์ˆ˜์ด๋ฆ„(5));
/*  ...  */ 
function ํ•จ์ˆ˜์ด๋ฆ„(n) { return n * n }

๋ฒ”์œ„๋Š” ํ•จ์ˆ˜๊ฐ€ ์„ ์–ธ๋œ ๊ณณ, ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ตœ์ƒ์œ„ ๋ ˆ๋ฒจ(์ „์—ญ)์— ์„ ์–ธ๋œ ๊ณณ

ํ•จ์ˆ˜ ๋ฒ”์œ„

ํ•จ์ˆ˜ ๋‚ด์—์„œ ์ •์˜๋œ ๋ณ€์ˆ˜๋Š” ๋ณ€์ˆ˜๊ฐ€ ํ•จ์ˆ˜์˜ ๋ฒ”์œ„์—์„œ๋งŒ ์ •์˜๋˜์–ด ์žˆ์Œ, ํ•จ์ˆ˜ ์™ธ๋ถ€์˜ ์–ด๋Š ๊ณณ์—์„œ๋“  ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๋‹ค.
ํ•˜์ง€๋งŒ ํ•จ์ˆ˜๊ฐ€ ์ •์˜๋œ ๋ฒ”์œ„ ๋‚ด์—์„œ ์ •์˜๋œ ๋ชจ๋“  ๋ณ€์ˆ˜๋‚˜ ํ•จ์ˆ˜๋Š” ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Œ
์ „์—ญํ•จ์ˆ˜๋Š” ๋ชจ๋“  ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Œ
๋‹ค๋ฅธ ํ•จ์ˆ˜ ๋‚ด์—์„œ ์ •์˜ ๋œ ํ•จ์ˆ˜๋Š” ๋ถ€๋ชจ ํ•จ์ˆ˜์™€ ๋ถ€๋ชจ ํ•จ์ˆ˜๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ์ •์˜๋œ ๋ชจ๋“  ๋ณ€์ˆ˜์— ์•ก์„ธ์Šค ๊ฐ€๋Šฅ.

var num1 = 20,
    num2 = 3,
    name = "Chamahk";

// This function is defined in the global scope
function multiply() {
  return num1 * num2;
}

multiply(); // Returns 60

// A nested function example
function getScore () {
  var num1 = 2,
      num2 = 3;

  function add() {
    return name + " scored " + (num1 + num2);
  }

  return add();
}

getScore(); // Returns "Chamahk scored 5"

๐Ÿƒ ์–ด๋ ค์› ๋˜ ์  or ํ•ด๊ฒฐ๋ชปํ•œ ๊ฒƒ

ํ•จ์ˆ˜ ์„ ์–ธ์— ๋Œ€ํ•œ ๋ฒ”์œ„๊ฐ€ ์–ด๋ ค์› ๋‹ค.

๐Ÿ€ ํ•ด๊ฒฐ๋ฐฉ๋ฒ• ์ž‘์„ฑ

โœ๏ธ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐ์„ ํ–ˆ๋Š”๊ฐ€?
โœ๏ธ ์ด๋ ‡๊ฒŒ ์ดํ•ด๋ฅผ ํ–ˆ๋‹ค
โœ๏ธ ์–ด๋””๊นŒ์ง€ ์ดํ•ดํ–ˆ์ง€?
โœ๏ธ ๋‹ค์Œ์— ์‹œ๋„ํ•ด๋ณผ ๋ฐฉ๋ฒ•
์ถ”๊ฐ€๋กœ ์ฐพ์•„์„œ ์ •๋ฆฌํ•ด๋ด์•ผ๊ฒ ๋‹ค

๐ŸŒท ํ•™์Šต ์†Œ๊ฐ

๋งŽ์€ ๋‚ด์šฉ์„ ๋ฐฐ์›Œ์„œ ํ•œ๋ฒˆ ๋” ์ •๋ฆฌํ•ด์•ผ๊ฒ ๋‹ค.

profile
Life is experience:)

0๊ฐœ์˜ ๋Œ“๊ธ€