[๐Ÿฑ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ] ์Šค์ฝ”ํ”„(scope)

dsfasdยท2022๋…„ 9์›” 8์ผ
0

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

๋ชฉ๋ก ๋ณด๊ธฐ
1/4

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Scope(์Šค์ฝ”ํ”„, ์œ ํšจ๋ฒ”์œ„)


๐ŸŽ ์Šค์ฝ”ํ”„๋ž€?

์Šค์ฝ”ํ”„๋Š” ์ฐธ์กฐ ๋Œ€์ƒ ์‹๋ณ„์ž (identifier, ๋ณ€์ˆ˜, ํ•จ์ˆ˜์˜ ์ด๋ฆ„๊ณผ ๊ฐ™์ด ์–ด๋–ค ๋Œ€์ƒ์„ ๋‹ค๋ฅธ ๋Œ€์ƒ๊ณผ ๊ตฌ๋ถ„ํ•˜์—ฌ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ์ด๋ฆ„) ๋ฅผ ์ฐพ์•„๋‚ด๊ธฐ ์œ„ํ•œ ๊ทœ์น™์ด๋‹ค.

์‹๋ณ„์ž๋Š” ์ž์‹ ์ด ์–ด๋””์—์„œ ์„ ์–ธ๋๋Š”์ง€์— ์˜ํ•ด ๋‹ค๋ฅธ ์ฝ”๋“œ๊ฐ€ ์ž์‹ ์„ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๋ฅผ ๊ฐ–๋Š”๋‹ค. ์ด๋Ÿฌํ•œ ๋ฒ”์œ„๋ฅผ ์Šค์ฝ”ํ”„๋ผ๊ณ  ํ•œ๋‹ค.

์Šค์ฝ”ํ”„๋Š” ๊ณ„์ธต์ ์ธ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ํ•˜์œ„ ์Šค์ฝ”ํ”„๋Š”
์ƒ์œ„ ์Šค์ฝ”ํ”„์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ฐ˜๋Œ€๋Š” ๋ถˆ๊ฐ€ํ•˜๋‹ค.

์˜ˆ์ œ

let name = 'me'; //์ „์—ญ ์Šค์ฝ”ํ”„์— ํ• ๋‹น๋œ name์˜ ๊ฐ’์€ 'me'

function yourName(){ //ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„์— ํ• ๋‹น๋œ name์˜ ๊ฐ’์€ 'you'
 name = 'you';
 // name์— ํ• ๋‹น๋œ ๊ฐ’ 'you'๋Š” ์˜ค์ง exampleFunction ๋‚ด๋ถ€์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ.
}

์œ„์˜ ์˜ˆ์ œ์™€ ๊ฐ™์ด ์ „์—ญ์— ์„ ์–ธ๋œ ๋ณ€์ˆ˜ name๋Š” ์–ด๋””์—๋“  ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋‹ค.
ํ•˜์ง€๋งŒ ํ•จ์ˆ˜ yourName ๋‚ด์—์„œ ์„ ์–ธ๋œ name์˜ ๊ฐ’ me๋Š”
ํ•จ์ˆ˜ yourName ๋‚ด๋ถ€์—์„œ๋งŒ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์™ธ๋ถ€ ์Šค์ฝ”ํ”„์—์„œ๋Š”
name์˜ ๊ฐ’ you๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.


๐ŸŽ ์Šค์ฝ”ํ”„์˜ ๋ฒ”์œ„

์Šค์ฝ”ํ”„์˜ ๋ฒ”์œ„์—๋Š” ํฌ๊ฒŒ ์ „์—ญ ์Šค์ฝ”ํ”„์™€ ์ง€์—ญ์Šค์ฝ”ํ”„๋กœ ๋‚˜๋‰œ๋‹ค.

์ „์—ญ ์Šค์ฝ”ํ”„ (Global scope)

  • ๊ฐ€์žฅ ๋ฐ”๊นฅ์ชฝ์˜ ์Šค์ฝ”ํ”„๋Š” ์ „์—ญ ์Šค์ฝ”ํ”„(Global Scope)๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.
  • ์ „์—ญ ์Šค์ฝ”ํ”„์—์„œ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์ „์—ญ ๋ณ€์ˆ˜(Global variable)
    ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.
  • ์ „์—ญ ๋ณ€์ˆ˜๋Š” ์–ด๋””์—์„œ๋“ ์ง€ ์ฐธ์กฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

์ง€์—ญ ์Šค์ฝ”ํ”„ (Local scope or Function-level scope)

  • ์ „์—ญ์ด ์•„๋‹Œ ๋‹ค๋ฅธ ์Šค์ฝ”ํ”„๋Š” ์ „๋ถ€ ์ง€์—ญ ์Šค์ฝ”ํ”„(local scope)์— ํ•ด๋‹นํ•œ๋‹ค. (์ง€์—ญ ์Šค์ฝ”ํ”„๋Š” ์ค‘์ฒฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.)
  • ์ง€์—ญ ์Šค์ฝ”ํ”„์—์„œ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์ง€์—ญ ๋ณ€์ˆ˜(Local variable)
    ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

์ „์—ญ๊ณผ ์ง€์—ญ ๋ณ€์ˆ˜์—์„œ ๋ณ€์ˆ˜๋ช…์ด ์ค‘๋ณต๋œ ๊ฒฝ์šฐ, ์ง€์—ญ๋ณ€์ˆ˜ ๋ฅผ ์šฐ์„ ํ•˜์—ฌ ์ฐธ์กฐํ•œ๋‹ค.

์˜ˆ์ œ

var x = 'global';

function foo() {
  var x = 'local';
  console.log(x); //local

  function bar() {  // ๋‚ด๋ถ€ํ•จ์ˆ˜
    console.log(x); // local
  }

  bar();
}
foo();
console.log(x); // global

์œ„ ์˜ˆ์ œ๋Š” ์ „์—ญ ๋ณ€์ˆ˜ x๋ฅผ ์„ ์–ธ ํ›„ global ๊ฐ’์„ ํ• ๋‹นํ–ˆ๊ณ , foo ํ•จ์ˆ˜์˜ ๋‚ด๋ถ€์—์„œ๋„ var x๋ฅผ ์„ ์–ธ ํ›„ ๊ฐ’ local์„ ํ• ๋‹นํ•˜์˜€๋‹ค.
foo ํ•จ์ˆ˜ ๋‚ด๋ถ€์— ์„ ์–ธ๋œ ๋ณ€์ˆ˜ x์˜ local ๊ฐ’์€ ํ•จ์ˆ˜ ๋‚ด๋ถ€ ์Šค์ฝ”ํ”„์—์„œ๋งŒ ๋ฒ”์œ„๊ฐ€ ์ ์šฉ๋˜๋ฏ€๋กœ ๋งˆ์ง€๋ง‰ ์ฝ˜์†” ์ถœ๋ ฅ์—๋Š” ์ „์—ญ var x ๊ฐ’์ธ global์ด ์ถœ๋ ฅ๋œ๋‹ค.


๐ŸŽ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„

์Šค์ฝ”ํ”„์—๋Š” ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„์™€ ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„ ๋‘ ๊ฐ€์ง€ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋‹ค.

๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„(block scope)

  • ์ค‘๊ด„ํ˜ธ ({...}) ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฒ”์œ„๋ฅผ ๊ตฌ๋ถ„ํ•œ๋‹ค.
  • ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ž€ ์ฝ”๋“œ ๋ธ”๋ก({โ€ฆ})๋‚ด์—์„œ ์œ ํšจํ•œ ์Šค์ฝ”ํ”„๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ๋ธ”๋ก ๋‚ด์—์„œ๋งŒ ๋ณ€์ˆ˜๊ฐ€ ์œ ํšจํ•˜๋ฉฐ, ๋ธ”๋ก ์™ธ๋ถ€์—์„œ๋Š” ์œ ํšจํ•˜์ง€ ์•Š๋‹ค(์ฐธ์กฐํ•  ์ˆ˜ ์—†๋‹ค)๋Š” ๊ฒƒ์ด๋‹ค.
  • ๋‹จ, ํ™”์‚ดํ‘œ ํ•จ์ˆ˜์˜ ๊ฒฝ์šฐ ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋กœ ์ทจ๊ธ‰ํ•œ๋‹ค.

ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„(function scope)

  • function ํ‚ค์›Œ๋“œ๊ฐ€ ๋“ฑ์žฅํ•˜๋Š” ํ•จ์ˆ˜ ์„ ์–ธ์‹ ๋ฐ ํ‘œํ˜„์‹์„ ๊ธฐ์ค€์œผ๋กœ
    ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„๋ฅผ ๋งŒ๋“ ๋‹ค.
  • ํ•จ์ˆ˜ ์ฝ”๋“œ ๋ธ”๋ก ๋‚ด์—์„œ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜ ์ฝ”๋“œ ๋ธ”๋ก ๋‚ด์—์„œ๋งŒ ์œ ํšจํ•˜๊ณ  ํ•จ์ˆ˜ ์™ธ๋ถ€์—์„œ๋Š” ์œ ํšจํ•˜์ง€ ์•Š๋‹ค(์ฐธ์กฐํ•  ์ˆ˜ ์—†๋‹ค)๋Š” ๊ฒƒ์ด๋‹ค.

๋‹ค๋ฅธ ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ฅผ ๊ฐ€์ง€๋Š” ์–ธ์–ด์™€ ๋‹ฌ๋ฆฌ,์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„ ์–ธ์–ด์ด๋‹ค. ํ•จ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ง€์—ญ ์Šค์ฝ”ํ”„๊ฐ€ ์ƒ์„ฑ๋˜๋ฉฐ, ํ•จ์ˆ˜ ๋‚ด์—์„œ ์ง€์—ญ ๋ณ€์ˆ˜์˜ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์˜ˆ์ œ

var x = 0;
{
  var x = 1;
  console.log(x); // 1
}
console.log(x);   // 1
// var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ x์˜ ๊ฐ’์ด 0์—์„œ 1๋กœ ๋ฐ”๋€Œ์—ˆ๋‹ค. 

let y = 0;
{
  let y = 1;
  console.log(y); // 1
}
console.log(y);   // 0
//let ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ x๊ฐ’์€ ๋ธ”๋ก ์Šค์ฝ”ํ”„ ๋‚ด์—์„œ ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋„ let ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” let const ํ‚ค์›Œ๋“œ์˜ ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•œ๋‹ค.

์ด๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํ˜ธ์ด์ŠคํŒ…๊ณผ ๊ด€๋ จ์ด ์žˆ๋‹ค.


๐ŸŽ let/ var/const ํ‚ค์›Œ๋“œ์˜ ํŠน์ง•

let ํ‚ค์›Œ๋“œ์˜ ํŠน์ง•

  • ๋ธ”๋ก ์Šค์ฝ”ํ”„ ์•ˆ์—์„œ let ํ‚ค์›Œ๋“œ๋กœ ์ •์˜๋œ ๋ณ€์ˆ˜๋Š”
    ๋ธ”๋ก ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๋Š” ์ฆ‰์‹œ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋‹ค.(Reference Error ๋ฐœ์ƒ)
  • let ์€ var ์™€ ๋‹ฌ๋ฆฌ ์žฌ์„ ์–ธ์„ ๋ฐฉ์ง€ํ•œ๋‹ค.

var ํ‚ค์›Œ๋“œ์˜ ํŠน์ง•

  • var ๋Š” ๋ธ”๋ก ์Šค์ฝ”ํ”„๋ฅผ ๋ฌด์‹œํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„๋งŒ ๋”ฐ๋ฅธ๋‹ค.
  • var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„์˜ ์ตœ์ƒ๋‹จ์— ์„ ์–ธ๋œ๋‹ค.
  • var ํ‚ค์›Œ๋“œ๋Š” let ๊ณผ ๋‹ฌ๋ฆฌ ์žฌ์„ ์–ธ์„ ํ—ˆ์šฉํ•œ๋‹ค.
    (๋ณดํ†ต ์žฌ์„ ์–ธ์„ ํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๋ฒ„๊ทธ์ด๋ฏ€๋กœ let ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ž.)

const ํ‚ค์›Œ๋“œ์˜ ํŠน์ง•

  • ๋ณ€ํ•˜์ง€ ์•Š๋Š” ๊ฐ’, ์ƒ์ˆ˜(constant)๋ฅผ ์ •์˜ํ•  ๋•Œ๋Š” const๋ฅผ ์ด์šฉํ•œ๋‹ค.
  • const๋Š” ๊ฐ’์˜ ์žฌํ• ๋‹น์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.
    ( const ํ‚ค์›Œ๋“œ ๋ณ€์ˆ˜์— ๊ฐ’์„ ์žฌํ• ๋‹นํ•  ๊ฒฝ์šฐ TypeError๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋ฏ€๋กœ, ์˜๋„ํ•˜์ง€ ์•Š์€ ๊ฐ’์˜ ๋ณ€๊ฒฝ์„ ๋ง‰์•„์ค€๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐ’์„ ์ƒˆ๋กญ๊ฒŒ ํ• ๋‹นํ•  ์ผ์ด ์—†๋Š” ๊ฒฝ์šฐ const ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•œ๋‹ค. )
  • let ํ‚ค์›Œ๋“œ์™€ ๋™์ผํ•˜๊ฒŒ ๋ธ”๋ก ์Šค์ฝ”ํ”„๋ฅผ ๋”ฐ๋ฅธ๋‹ค.

๐ŸŽ ๋ณ€์ˆ˜ ์„ ์–ธ์‹œ ์ฃผ์˜ํ•  ์ 

๐Ÿ“ var ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ์„ ์ง€์–‘ํ•˜์ž

window ๊ฐ์ฒด๋Š” ๋ธŒ๋ผ์šฐ์ €์—๋งŒ ์กด์žฌํ•œ๋‹ค. ์ด๋Š” ๋ธŒ๋ผ์šฐ์ €์˜ ์ฐฝ์„ ์˜๋ฏธํ•˜๋Š” ๊ฐ์ฒด์ง€๋งŒ, ๋ณ„๊ฐœ๋กœ ์ „์—ญ ์˜์—ญ์„ ๋‹ด๊ณ ์žˆ๊ธฐ๋„ ํ•œ๋‹ค.

๋”ฐ๋ผ์„œ ํ•จ์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ฑฐ๋‚˜, var ๋กœ ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค๋ฉด window ๊ฐ์ฒด์—์„œ๋„ ๋™์ผํ•œ ๊ฐ’์„ ์ฐพ์„ ์ˆ˜๊ฐ€ ์žˆ๋‹ค.

๐Ÿ“์ „์—ญ ๋ณ€์ˆ˜์— ๋„ˆ๋ฌด ๋งŽ์€ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜์ง€ ๋ง์ž.

์ „์—ญ ๋ณ€์ˆ˜๋Š” ์–ด๋””์„œ๋“  ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ณ€์ˆ˜๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

์ฐธ์กฐ๊ฐ€ ์‰ฌ์›Œ์„œ ํŽธ๋ฆฌํ•œ ๋Œ€์‹  ๋‹ค๋ฅธ ํ•จ์ˆ˜ ํ˜น์€ ๋กœ์ง์— ์˜ํ•ด ์˜๋„๋˜์ง€ ์•Š์€ ๊ฐ’์ด ๋ณ€๊ฒฝ๋˜๋Š” side effect ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ“var๋Š” ๋ธ”๋ก ์Šค์ฝ”ํ”„๋ฅผ ๋ฌด์‹œํ•˜๋ฉฐ, ์žฌ์„ ์–ธ์„ ํ•ด๋„ ์—๋Ÿฌ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค์ง€ ์•Š๋Š”๋‹ค.

๊ฐ™์€ ์Šค์ฝ”ํ”„์—์„œ ๋™์ผํ•œ ์ด๋ฆ„์˜ ๋ณ€์ˆ˜๋ฅผ ์žฌ์„ ์–ธ ํ•˜๋Š” ๊ฒƒ์€ ๋ฒ„๊ทธ๋ฅผ ์œ ๋ฐœํ•œ๋‹ค.

๐Ÿ“ ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ var๋กœ ์„ ์–ธํ•˜๋ฉด ๋ฌธ์ œ๋  ์ˆ˜ ์žˆ๋‹ค.

var๋กœ ์„ ์–ธํ•œ ์ „์—ญ ๋ณ€์ˆ˜๋Š” window ๊ฐ์ฒด์— ์†ํ•˜๋Š” ์ „์—ญ๋ณ€์ˆ˜๊ฐ€ ๋œ๋‹ค.
์ด๋Š” window ๊ธฐ๋Šฅ์„ ๋ฎ์–ด์”Œ์›Œ์„œ ๋‚ด์žฅ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ“ ์„ ์–ธ ํ‚ค์›Œ๋“œ (var, let, const) ์—†์ด ๋ณ€์ˆ˜๋ฅผ ํ• ๋‹นํ•˜์ง€ ๋ง์ž.

์•„๋ฌด๋Ÿฐ ํ‚ค์›Œ๋“œ ์„ ์–ธ ์—†์ด ๋ณ€์ˆ˜๋ฅผ ํ• ๋‹นํ•˜๋ฉด var๋กœ ์„ ์–ธํ•œ ์ „์—ญ ๋ณ€์ˆ˜ ์ฒ˜๋Ÿผ ์ทจ๊ธ‰๋œ๋‹ค.

๐Ÿ“ ์‹ค์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด์„œ Strict Mode๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

Strict Mode ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์—„๊ฒฉํ•˜๊ฒŒ ์ž‘๋™๋œ๋‹ค. ์„ ์–ธ ์—†๋Š” ๋ณ€์ˆ˜ํ• ๋‹น์˜ ๊ฒฝ์šฐ๋„ Strict Mode์—์„œ๋Š” ์—๋Ÿฌ๋กœ ํŒ๋‹จํ•œ๋‹ค.

Strict Mode์˜ ์‚ฌ์šฉ : js ํŒŒ์ผ ์ƒ๋‹จ์— 'use strict'; ์ž…๋ ฅ


๐Ÿ“Œ ๋งˆ์ง€๋ง‰ ์ •๋ฆฌ

ํ•จ์ˆ˜๋Š” ๋ณ€์ˆ˜๊ฐ€ ์œ ํšจํ•œ ๋ฒ”์œ„๋ฅผ ๊ฐ€์ง€๋Š”๋ฐ, ๊ทธ๊ฒƒ์„ ์Šค์ฝ”ํ”„ ๋ผ๊ณ  ํ•œ๋‹ค.

์Šค์ฝ”ํ”„๋Š” ์ง€์—ญ ์Šค์ฝ”ํ”„์—์„œ ์™ธ๋ถ€ ์Šค์ฝ”ํ”„๋กœ์˜ ์ฐธ์กฐ๋Š” ๊ฐ€๋Šฅํ•˜๋‚˜,
๋ฐ˜๋Œ€๋กœ ์™ธ๋ถ€ ์Šค์ฝ”ํ”„์• ์„œ ์ง€์—ญ ์Šค์ฝ”ํ”„๋กœ์˜ ์ฐธ์กฐ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„ ์–ธ์–ด๋ผ์„œ ํ•จ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์Šค์ฝ”ํ”„ ๊ฐ’์„ ๊ฐ–๋Š”๋‹ค.

ํ•˜์ง€๋งŒ let, const ํ‚ค์›Œ๋“œ๋ฅด ์‚ฌ์šฉํ•˜๋ฉด ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„ ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

profile
๊ธฐ๋ก์„ ์ •๋ฆฌํ•˜๋Š” ๊ณต๊ฐ„!

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