JavaScript

[JavaScript] ๋ณ€์ˆ˜์˜ ์ข…๋ฅ˜์— ๋”ฐ๋ฅธ ์žฌ ์„ ์–ธ , ์žฌ ํ• ๋‹น ๊ทธ๋ฆฌ๊ณ  ํ˜ธ์ด์ŠคํŒ…์„ ์˜ˆ์ œ๋กœ ์•Œ์•„๋ณด๊ธฐ

joheamin 2025. 1. 27. 10:09
๐Ÿค” ๋ณ€์ˆ˜๋ž€?

๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ทธ๋ฆ‡์œผ๋กœ์จ

์„ ์–ธ๊ณผ ํ• ๋‹น์„ ํ†ตํ•˜์—ฌ ๊ฐ’์„ ๋ณ€์ˆ˜์— ์ €์žฅํ•œ๋‹ค.

 

๋ณ€์ˆ˜๋Š” ์–ธ์–ด๋งˆ๋‹ค ์—ฌ๋Ÿฌ ํƒ€์ž…๊ณผ ์ข…๋ฅ˜ ๋“ค์ด ์žˆ์œผ๋ฉฐ ๊ฐ๊ฐ์˜ ํŠน์„ฑ์„ ๊ฐ€์ง„๋‹ค.

 

 ๐Ÿ“™ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ณ€์ˆ˜์˜ ์ข…๋ฅ˜

  • var ๋Š” ์žฌ ์„ ์–ธ ,์žฌ ํ• ๋‹น์ด ๊ฐ€๋Šฅ ํ•˜๋ฉฐ , ํ˜ธ์ด์ŠคํŒ…์ด ์ผ์–ด๋‚œ๋‹ค.
  • let ์€ ์žฌ ์„ ์–ธ์€ ๋ถˆ๊ฐ€๋Šฅ ํ•˜๋ฉฐ ์žฌ ํ• ๋‹น์€ ๊ฐ€๋Šฅํ•˜๊ณ , ํ˜ธ์ด์ŠคํŒ…์ด ์ผ์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค.
  • const ๋Š” ์žฌ ์„ ์–ธ , ์žฌ ํ• ๋‹น ์ „๋ถ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ณ , ํ˜ธ์ด์ŠคํŒ…์ด ์ผ์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค.

 

โ“ ์žฌ ์„ ์–ธ๊ณผ ์žฌ ํ• ๋‹น์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š”๊ฒŒ ๋ฌด์—‡์ผ๊นŒ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์‹คํ–‰ ์‹œ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰ํ•˜๋ฉฐ,

์‹คํ–‰ ์‹œ ๋ฌธ์„œ์˜ ์ฝ”๋“œ๋ฅผ ํ•œ ์ค„์”ฉ ์ฝ์–ด๋“ค์—ฌ ์‹คํ–‰ํ•˜๋Š”๊ฒƒ์ด๋‹ค.

 

์œ„์—์„œ ๋ถ€ํ„ฐ ์•„๋ž˜๊นŒ์ง€ ์ˆœ์„œ๋Œ€๋กœ ํ•œ ์ค„์”ฉ ์ฝ๊ธฐ๋•Œ๋ฌธ์— ์„ ์–ธ๊ณผ ํ˜ธ์ถœ์„ ์–ด๋А ์œ„์น˜์—์„œ ํ•˜์˜€๋Š”์ง€์— ๋Œ€ํ•œ ์ œ์•ฝ์ด ์ƒ๊ธด๋‹ค.

 

 

๐Ÿ”น๋ณ€์ˆ˜๋“ค์˜ ํŠน์ง•์„ ์˜ˆ์ œ๋กœ ์•Œ์•„๋ณด๊ธฐ

์žฌ ์„ ์–ธ ์žฌ ํ• ๋‹น ํ™•์ธ

 

var

//์žฌ ์„ ์–ธ
//์—๋Ÿฌ ๋ฐœ์ƒ x
var x = 100; 
var x = 200; 

//์žฌ ํ• ๋‹น
//์—๋Ÿฌ ๋ฐœ์ƒ x
var y = 100; 
y = 200;

 

let

 

//์žฌ ์„ ์–ธ
//์—๋Ÿฌ ๋ฐœ์ƒ o
let x = 100; 
let x = 200; 


//์žฌ ํ• ๋‹น
//์—๋Ÿฌ ๋ฐœ์ƒ x
let y = 100; 
y = 200;

 

const

//์žฌ ์„ ์–ธ
//์—๋Ÿฌ ๋ฐœ์ƒ o
const x = 100; 
const x = 200; 


//์žฌ ํ• ๋‹น
//์—๋Ÿฌ ๋ฐœ์ƒ o
const y = 100; 
y = 200;

ํ˜ธ์ด์ŠคํŒ… ํ™•์ธ 

 

๐Ÿค” ๊ทธ ์ „์— ํ˜ธ์ด์ŠคํŒ…์ด๋ž€?

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•ด ์ฝ”๋“œ๋ฅผ ํ•œ ์ค„์”ฉ ์ฝ์–ด ๋“ค์ด๋ฉฐ ์‹คํ–‰ํ•œ๋‹ค.

์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ ํ†ตํ•ด ๋ถ„์„ ๋‹จ๊ณ„์™€ ์‹คํ–‰ ๋‹จ๊ณ„์˜ ์ˆœ์„œ๋กœ ์‹คํ–‰๋œ๋‹ค.

 

๐Ÿ‘‰ ๋ถ„์„ ๋‹จ๊ณ„๋ž€? 

  • ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜๋ฅผ ์ญ‰ ํ™•์ธํ•œ ํ›„ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋”ฉ ํ•œ๋‹ค.์ด๋Ÿฌํ•œ ์ฒ˜๋ฆฌ๋ฅผ ์‹คํ–‰ ํ•˜๋Š” ๊ฒƒ์ด ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์ด๋‹ค.
  • ๋”ฐ๋ผ์„œ ์‹คํ–‰ ๋‹จ๊ณ„๋กœ ๋“ค์–ด๊ฐ„ ์‹œ์ ์—์„œ๋Š” ์ด๋ฏธ ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜๋ฅผ ์ธ์‹ํ•˜๊ณ  ์žˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ํ˜„์ƒ์€ ๋งŽ์€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.

 

์ด๋ฏธ ์กด์žฌ๋ฅผ ์ „๋ถ€ ์ธ์‹ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰๋˜๋Š” ์‹คํ–‰ ๋‹จ๊ณ„์—์„œ

์•„์ง ์„ ์–ธ๋˜๊ธฐ ์ „์˜ ๋ณ€์ˆ˜๋‚˜ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ๋„ ์ถœ๋ ฅ์ด ๋œ๋‹ค.

 

๋‹ค๋งŒ ์—๋Ÿฌ ์—†์ด ์ถœ๋ ฅ์€ ๊ฐ€๋Šฅํ•˜๋‚˜ undefined ๋กœ ์ถœ๋ ฅ๋œ๋‹ค.

 

๊ทธ๋ ‡๊ฒŒ ๋œ๋‹ค๋ฉด ์—๋Ÿฌ๋Š” ์—†๋Š”๋ฐ ๊ฐ’์€ ์•ˆ ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์— ์—๋Ÿฌ๋ฅผ ์ฐพ๊ธฐ๋„ ํž˜๋“ค ๋ฟ ๋”๋Ÿฌ

๋ถˆํŽธํ•œ ์ ์ด ๊ต‰์žฅํžˆ ๋งŽ๋‹ค.

 

์ด๋Ÿฌํ•œ ์ ์„ ๋ณด์™„ํ•˜์—ฌ ๋‚˜์˜จ Type์ด let ๊ณผ const ์ด๋‹ค.

 

let ๊ณผ const ํ˜ธ์ด์ŠคํŒ…์ด ๋ถˆ๊ฐ€๋Šฅ ํ•˜๋ฉฐ,

์„ ์–ธ ๋˜๊ธฐ ์ด์ „์— ๋ณ€์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๊ฒฝ์šฐ ์‹คํ–‰ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ฒŒ ๋œ๋‹ค.

 

์‹คํ–‰์€ ๋˜๋‚˜ ํ•ด๋‹น ๋ผ์ธ์—์„œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

 

 

var 

alert(check);
var check = 10;

๐Ÿ‘‰ ์‹คํ–‰์€ ๋˜๋‚˜ undifined ์ถœ๋ ฅ

 

โ“ ์›์ธ

var ๋Š” ํ˜ธ์ด์ŠคํŒ…์ด ๊ฐ€๋Šฅํ•œ ๋ณ€์ˆ˜๋กœ ๋ถ„์„ ๋‹จ๊ณ„์—์„œ ์ด๋ฏธ check๋ผ๋Š” ์ด๋ฆ„์˜ ๊ฐ’์ด ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋˜์–ด์žˆ๊ณ 

ํ˜ธ์ด์ŠคํŒ…์€ ์‹คํ–‰ ๋‹จ๊ณ„์—์„œ ์„ ์–ธ ์ „์ธ ๋ณ€์ˆ˜๋ฅผ ํ˜ธ์ถœ์„ ํ•˜์˜€์–ด๋„ ์ด๋ฏธ ๋ณ€์ˆ˜์˜ ์กด์žฌ๋ฅผ ์ธ์‹ ํ•˜๊ณ ์žˆ๊ธฐ๋•Œ๋ฌธ์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€์•Š๋Š”๋‹ค. 

 

๋‹ค๋งŒ ๋ถ„์„ ๋‹จ๊ณ„์—์„œ๋Š” ์„ ์–ธ๋งŒ์„ ์ €์žฅํ•˜๊ธฐ๋•Œ๋ฌธ์— ๊ฐ’๊นŒ์ง€ ๊ฐ™์ด ์ €์žฅ๋˜์ง„ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ’์„ ์ถœ๋ ฅํ•  ๊ฒฝ์šฐ

undefined ๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.

 

 

let / const 

alert(check);
let check = 10;

//and 

alert(check);
const check = 10;

 

โš ๏ธ ์—๋Ÿฌ ๋ฐœ์ƒ

 

 

โ“ ์›์ธ

์—๋Ÿฌ ๋ฐœ์ƒ ์›์ธ์€ ์ดˆ๊ธฐํ™” ๋˜์ง€์•Š์€ ๋ณ€์ˆ˜์—๋Š” ์ ‘๊ทผ์„ ํ• ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•œ ๊ฒƒ์ด๋‹ค.

let ๊ณผ const ๋Š” ํ˜ธ์ด์ŠคํŒ…์ด ์ผ์–ด๋‚˜์ง€ ์•Š๋Š” ๋ณ€์ˆ˜๋กœ ๋ถ„์„๋‹จ๊ณ„์—์„œ ์ธ์‹ ๋˜์—ˆ์–ด๋„ 

 

์ฝ”๋“œ์˜ ์ˆœ์„œ ์ƒ ์„ ์–ธ ์ด์ „์— ์ ‘๊ทผ์„ ํ•˜๊ฒŒ ๋  ๊ฒฝ์šฐ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฒŒ๋œ๋‹ค.