๐Ÿค”ํŒํ€ด์ฆˆ! ๋‹ค์Œ ์ค‘ ๋ฌดํ•œ ๋ฃจํ”„๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

8139 ๋‹จ์–ด quizjavascript

ํ€ด์ฆˆ!



๋‹ค์Œ ์ค‘ ๋ฌดํ•œ ๋ฃจํ”„๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ทธ๋ฆฌ๊ณ  ์—ฌ๋Ÿฌ ๋ฒˆ console.log๊ฐ€ ์ธ์‡„๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

A: let 5x3 ๋ฃจํ”„

for(let i = 0; i < 5; i++){
  for(let i = 0; i < 3; i++){
    console.log(1)
  }
}

B: var 5x3 ๋ฃจํ”„

for(var i = 0; i < 5; i++){
  for(var i = 0; i < 3; i++){
    console.log(1)
  }
}

C: var 5x5 ๋ฃจํ”„

for(var i = 0; i < 5; i++){
  for(var i = 0; i < 5; i++){ 
    console.log(1)
  }
}

D: let 5x5 ๋ฃจํ”„

for(let i = 0; i < 5; i++){
  for(let i = 0; i < 5; i++){
    console.log(1)
  }
}

๋Œ€๋‹ต



๋‹ค์Œ ์ค‘ ๋ฌดํ•œ ๋ฃจํ”„๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
B: var 5x3

์—ฌ๋Ÿฌ ๋ฒˆ console.log๊ฐ€ ์ธ์‡„๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
A: let 5x3 - 15ํšŒ
B: var 5x3 - ๋ฌดํ•œ ์‹œ๊ฐ„
C: var 5x5 - 5ํšŒ
D: let 5x5 - 25ํšŒ

์–ด๋–ค ๋‹ต๋ณ€์ด ๋‹น์‹ ์„ ๋†€๋ผ๊ฒŒ ํ–ˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ~์˜€๋‹ค!

๐Ÿง ๋ญ, ๊ทธ๋Ÿฐ๋ฐ ์™œ? let ๊ณผ var ์˜ ์ฐจ์ด์ .



< ํ”Œ๋ž˜์‹œ๋ฐฑ >

์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฅ˜๋ฅผ ์œ ๋ฐœํ•˜๋Š” Javascript ์ฝ”๋“œ์˜ ๋ฒ„๊ทธ์— ๋Œ€ํ•ด ๋„์›€์„ ์š”์ฒญํ–ˆ์Šต๋‹ˆ๋‹ค. ์ œ ์ง๊ฐ์€ ์–ด๋”˜๊ฐ€์— ๋ฌดํ•œ ๋ฃจํ”„๊ฐ€ ์žˆ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.

์ค‘์ฒฉ ๋ฃจํ”„ ์ค‘ ํ•˜๋‚˜๋Š” ๋‚˜์—๊ฒŒ ์œ„ํ—˜ ์‹ ํ˜ธ๋กœ ๋ˆˆ์— ๋„์—ˆ์Šต๋‹ˆ๋‹ค.

for(let i = 0; i < 5; i++){
  for(let i = 0; i < 5; i++){
    // some code
  }
}

๋‚˜๋Š” ๋งํ–ˆ๋‹ค โ€“ ์ด๋ด, ๋‹น์‹ ์€ ์™ธ๋ถ€ ๋ฃจํ”„์™€ ๋‚ด๋ถ€ ๋ฃจํ”„์— ๋Œ€ํ•ด ๋™์ผํ•œ ๋ณ€์ˆ˜ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ฌดํ•œ ๋ฃจํ”„๋ฅผ ์•ผ๊ธฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

JD: ์–ด? ์–ด๋•Œ?

๋‚˜: ๋‚ด๋ถ€ ๋ฃจํ”„๊ฐ€ 0์œผ๋กœ ์žฌ์„ค์ •i๋˜์–ด ์™ธ๋ถ€ ๋ฃจํ”„๊ฐ€ ์ข…๋ฃŒ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ฝ˜์†”์—์„œ ์‹œ๋„ํ•ด ๋ด…์‹œ๋‹ค. ๊ทธ๋ƒฅ ๋ณด๋Š” ๊ฒƒ์ด ๋” ๋น ๋ฆ…๋‹ˆ๋‹ค.

๋†€๋ž๊ฒŒ๋„ ๋ฌดํ•œ ๋ฃจํ”„๊ฐ€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.


console.log๋Š” 25ํšŒ๋งŒ ์ธ์‡„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜: ์Œ...? ์ด์ƒํ•˜๋‹ค. (๊ทธ๋Ÿฐ ๋‹ค์Œ ์ฝ”๋“œ๊ฐ€ let ๋Œ€์‹  var ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค.) ์–ด์ฉŒ๋ฉด... ๋ฌดํ•œ ๋ฃจํ”„๋Š” var ๋Œ€์‹  let ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
let ๋ฅผ var ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ๋‹ค์‹œ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.


console.log๋Š” 5ํšŒ๋งŒ ์ธ์‡„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ: ์ž ๊น๋งŒ์š”? ์™œ 5๋ฒˆ๋งŒ ์ธ์‡„ํ•ฉ๋‹ˆ๊นŒ?

๋‚˜: ... ์•„, ๊ทธ ์ด์œ ๋Š” ์ด ์˜ˆ์ œ์—์„œ๋Š” var ๋Œ€์‹  let๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. let๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋™์ผํ•œ ์ด๋ฆ„์œผ๋กœ ๋ฒ”์œ„ ๋ณ€์ˆ˜๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์„ ์–ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ var๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ๋ถ€๋ชจ-์ž์‹ ๋ฒ”์œ„์—์„œ ๊ฐ™์€ ์ด๋ฆ„์„ ๊ฐ€์ง„ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด ๋ชจ๋‘ ๊ฐ™์€ ๊ฒƒ์„ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์—ฌ๊ธฐ์„œ var ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‚ด๋ถ€ ๋ฃจํ”„๋Š” ์™ธ๋ถ€ ๋ฃจํ”„์™€ ๋™์ผํ•œ i๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋‚ด๋ถ€ ๋ฃจํ”„๊ฐ€ i๋ฅผ 5๊นŒ์ง€ ์„ธ๊ณ  ์ข…๋ฃŒํ•˜๋ฉด ์™ธ๋ถ€ ๋ฃจํ”„๋Š” ๋‚ด๋ถ€ โ€‹โ€‹๋ฃจํ”„์— ์˜ํ•ด i ์นด์šดํ„ฐ๊ฐ€ 5๋กœ ์„ค์ •๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ฆ‰์‹œ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.


JD: ์˜ค... ์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด i๊ฐ€ 3์ผ ๋•Œ ์ข…๋ฃŒํ•˜๋„๋ก ๋‚ด๋ถ€ ๋ฃจํ”„๋ฅผ ์„ค์ •ํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ๋ฉ๋‹ˆ๊นŒ? ๋ฌดํ•œ ๋ฃจํ”„๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๊นŒ?

๋‚˜: ์•Œ์•„๋ด…์‹œ๋‹ค.


console.log๊ฐ€ 15ํšŒ ๋„˜๊ฒŒ ์ธ์‡„๋˜์–ด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‹ค์šด๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ: ๐Ÿ™Œ ๋ฌดํ•œ ๋ฃจํ”„๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค!


๊ทธ๋ฆฌ๊ณ  ์ง€๊ธˆ var๋ฅผ let๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ์š”?


console.log๋Š” 15ํšŒ๋งŒ ์ธ์‡„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.


JD: ์ข‹์Šต๋‹ˆ๋‹ค. ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ var์˜ ์‚ฌ์šฉ ์‚ฌ๋ก€๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋‚˜: ์•„ ์ข‹์€ ์งˆ๋ฌธ์ด๋„ค์š”. ๐Ÿค” ...์‹ค์ œ๋กœ๋Š” ์—†์Šต๋‹ˆ๋‹ค. ES6๊ฐ€ var๋ฅผ ๋„์ž…ํ•œ ์ง€๊ธˆ let์— ๋Œ€ํ•œ ์ข‹์€ ์‚ฌ์šฉ ์‚ฌ๋ก€๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. var๋Š” ์šฐ๋ฆฌ๊ฐ€ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ณ€์ˆ˜๊ฐ€ ํ•ด๋‹น ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ let๊ฐ€ ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ‚ค์›Œ๋“œlet์˜ ์ด๋ฆ„์„ ์ •ํ•œ ์ด์œ ๋Š” ๋ฌป์ง€ ๋งˆ์„ธ์š”. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ์˜ eslint๊ฐ€ let๋ณด๋‹ค var๋ฅผ ์‹œํ–‰ํ•˜๋„๋ก ๊ตฌ์„ฑ๋œ ์ด์œ ์ž…๋‹ˆ๋‹ค. :)

JD: ์˜ค! ์ข‹์Šต๋‹ˆ๋‹ค... ์ด ๋ฃจํ”„๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฅ˜๋ฅผ ์ผ์œผํ‚ค์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋ฌด์—‡์ด ์›์ธ์ผ๊นŒ์š”? (๊ทธ๊ฒƒ์€ ์™„์ „ํžˆ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ํŒ๋ช…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.)



์•„ ๋Œ์ด์ผœ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์šฐ๋ฆฌ๋Š” ์ด์ œ ES6๋ฅผ ์ž˜ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ข‹์€ ์›นํŽ˜์ด์ง€ ์ฆ๊ฒจ์ฐพ๊ธฐ