front-end/JavaScript

[JavaScript] 2. ν‘œν˜„μ‹κ³Ό λ¬Έ

gaan 2023. 3. 27. 05:48

πŸ“– λͺ¨λ˜ μžλ°”μŠ€ν¬λ¦½νŠΈ ꡐ재) 5μž₯. ν‘œν˜„μ‹κ³Ό λ¬Έ

 

01. κ°’

κ°’(value)은 식(ν‘œν˜„μ‹)이 평가(evaluate)λ˜μ–΄ μƒμ„±λœ κ²°κ³Όλ₯Ό λ§ν•œλ‹€.

 

πŸ–₯️ 예제 μ½”λ“œ

// λ³€μˆ˜μ—λŠ” 10 + 20이 ν‰κ°€λ˜μ–΄ μƒμ„±λœ 숫자 κ°’ 30이 ν• λ‹Ήλœλ‹€.
var sum = 10 + 20;

➑️ λ³€μˆ˜μ— ν• λ‹Ήλ˜λŠ” 것 λ˜ν•œ κ°’.

 


02. λ¦¬ν„°λŸ΄

λ¦¬ν„°λŸ΄μ€ μ‚¬λžŒμ΄ 이해할 수 μžˆλŠ” 문자 λ˜λŠ” μ•½μ†λœ 기호λ₯Ό μ‚¬μš©ν•΄ 값을 μƒμ„±ν•˜λŠ” ν‘œκΈ°λ²•μ΄λ‹€.

 

μžλ°”μŠ€ν¬λ¦½νŠΈ 엔진은 μ½”λ“œκ°€ μ‹€ν–‰λ˜λŠ” μ‹œμ μΈ λŸ°νƒ€μž„μ— λ¦¬ν„°λŸ΄μ„ 평가해 값을 μƒμ„±ν•œλ‹€.

 

πŸ’‘ λ¦¬ν„°λŸ΄μ„ μ‚¬μš©ν•˜μ—¬ 생성할 수 μžˆλŠ” κ°’μ˜ μ’…λ₯˜

μ •μˆ˜ λ¦¬ν„°λŸ΄ λΆ€λ™μ†Œμˆ˜μ  λ¦¬ν„°λŸ΄ 2μ§„μˆ˜ λ¦¬ν„°λŸ΄ 8μ§„μˆ˜ λ¦¬ν„°λŸ΄
16μ§„μˆ˜ λ¦¬ν„°λŸ΄ λ¬Έμžμ—΄ λ¦¬ν„°λŸ΄ λΆˆλ¦¬μ–Έ λ¦¬ν„°λŸ΄ null λ¦¬ν„°λŸ΄
undefined λ¦¬ν„°λŸ΄ 객체 λ¦¬ν„°λŸ΄ λ°°μ—΄ λ¦¬ν„°λŸ΄ ν•¨μˆ˜ λ¦¬ν„°λŸ΄

 


03. ν‘œν˜„μ‹

ν‘œν˜„μ‹(expression)은 κ°’μœΌλ‘œ 평가될 수 μžˆλŠ” λ¬Έ(statement)이닀.
즉, ν‘œν˜„μ‹μ΄ ν‰κ°€λ˜λ©΄ μƒˆλ‘œμš΄ 값을 μƒμ„±ν•˜κ±°λ‚˜ κΈ°μ‘΄ 값을 μ°Έμ‘°ν•œλ‹€.

 

ν‘œν˜„μ‹μ€ κ°’μœΌλ‘œ ν‰κ°€λœλ‹€.

 

πŸ–₯️ 예제 μ½”λ“œ

var x = 1 + 2;

// μ‹λ³„μž ν‘œν˜„μ‹ xλŠ” 3으둜 ν‰κ°€λœλ‹€.
x + 3; // -> 6

➑️ μœ„ 예제의  x + 3은 ν‘œν˜„μ‹μ΄λ‹€.

➑️ ν‘œν˜„μ‹μ€ λ‹€λ₯Έ ν‘œν˜„μ‹μ˜ 일뢀가 λ˜μ–΄ μƒˆλ‘œμš΄ 값을 λ§Œλ“€μ–΄λ‚Ό 수 μžˆλ‹€.

 


04. λ¬Έ

"λ¬Έ(statement)"κ³Ό "ν‘œν˜„μ‹(expression)"을 κ΅¬λ³„ν•˜κ³  해석할 수 μžˆλ‹€λ©΄, μžλ°”μŠ€ν¬λ¦½νŠΈ μ—”μ§„μ˜ μž…μž₯μ—μ„œ μ½”λ“œλ₯Ό 읽을 수 있고 κ²°κ³Όλ₯Ό μ˜ˆμΈ‘ν•˜λŠ” 데 도움이 λœλ‹€.

 

λ¬Έ(statement)은 ν”„λ‘œκ·Έλž¨μ„ κ΅¬μ„±ν•˜λŠ” κΈ°λ³Έ λ‹¨μœ„μ΄μž μ΅œμ†Œ μ‹€ν–‰ λ‹¨μœ„λ‹€.

05. ν‘œν˜„μ‹μΈ λ¬Έκ³Ό ν‘œν˜„μ‹μ΄ μ•„λ‹Œ λ¬Έ

 

πŸ–₯️ 예제 μ½”λ“œ

// λ³€μˆ˜ 선언문은 κ°’μœΌλ‘œ 평가될 수 μ—†μœΌλ―€λ‘œ ν‘œν˜„μ‹μ΄ μ•„λ‹ˆλ‹€.
var x;
// 1, 2, 1 + 2, x = 1 + 2λŠ” λͺ¨λ‘ ν‘œν˜„μ‹μ΄λ‹€.
// x = 1 + 2λŠ” ν‘œν˜„μ‹μ΄λ©΄μ„œ μ™„μ „ν•œ 문이기도 ν•˜λ‹€.
x = 1 + 2;

 

λ‹€μŒ 예제 μ½”λ“œλ“€μ„ 보며 ν‘œν˜„μ‹μΈ λ¬Έκ³Ό ν‘œν˜„μ‹μ΄ μ•„λ‹Œ 문을 κ΅¬λ³„ν•΄λ³΄μž.

 

πŸ–₯️ 예제 μ½”λ“œ

// ν‘œν˜„μ‹μ΄ μ•„λ‹Œ 문은 κ°’μ²˜λŸΌ μ‚¬μš©ν•  수 μ—†λ‹€.
var foo = var x;

// λ³€μˆ˜ 선언문은 ν‘œν˜„μ‹μ΄ μ•„λ‹Œ 문이닀.
var x;

// 할당문은 κ·Έ μžμ²΄κ°€ ν‘œν˜„μ‹μ΄μ§€λ§Œ μ™„μ „ν•œ 문이기도 ν•˜λ‹€.
// 즉, 할당문은 ν‘œν˜„μ‹μΈ 문이닀.
x = 100;

// ν‘œν˜„μ‹μΈ 문은 κ°’μ²˜λŸΌ μ‚¬μš©ν•  수 μžˆλ‹€.
var foo = x = 100;
console.lof(foo); // 100

 

 

πŸ“– 참고자료

https://www.inflearn.com/course/%EB%AA%A8%EB%8D%98-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EB%94%A5%EB%8B%A4%EC%9D%B4%EB%B8%8C/dashboard

 

[무료] λͺ¨λ˜ μžλ°”μŠ€ν¬λ¦½νŠΈ λ”₯λ‹€μ΄λΈŒ μŠ€ν„°λ”” - μΈν”„λŸ° | κ°•μ˜

γ€Šλͺ¨λ˜ μžλ°”μŠ€ν¬λ¦½νŠΈ λ”₯λ‹€μ΄λΈŒγ€‹ μ±… λ‚΄μš©μ„ κ·ΈλŒ€λ‘œ λ”°λΌκ°€λŠ” μŠ€ν„°λ”” μ˜μƒμž…λ‹ˆλ‹€. ν•¨κ»˜ κ³΅λΆ€ν•˜λ©΄ 훨씬 μ‰¬μ›Œμ§ˆ κ±°μ—μš”!, - κ°•μ˜ μ†Œκ°œ | μΈν”„λŸ°

www.inflearn.com