Skip to content

Latest commit

Β 

History

History
313 lines (243 loc) Β· 10.7 KB

File metadata and controls

313 lines (243 loc) Β· 10.7 KB

ν”νžˆλ“€ μ‚¬μš©ν•˜λŠ” λ³€μˆ˜λŠ” λ¬΄μ—‡μΌκΉŒμš”? 또 μƒμˆ˜, λ¦¬ν„°λŸ΄κ³Ό 값은 λ¬΄μ—‡μΌκΉŒμš”? 이런 μš©μ–΄λŠ” μžλ°”μŠ€ν¬λ¦½νŠΈλ₯Ό λ– λ‚˜ 컴퓨터 과학에 널리 μ‚¬μš©ν•˜λŠ” μš©μ–΄μž…λ‹ˆλ‹€. κ°„λž΅ν•˜μ§€λ§Œ μ •ν™•ν•˜κ²Œ 짚고 λ„˜μ–΄κ°€μ£ .

λ³€μˆ˜(Variable)

값을 μ°Έμ‘°ν•˜λŠ” μ΄λ¦„μœΌλ‘œ, 값은 μ–Έμ œλ“  λ³€ν•  수 μžˆμ§€λ§Œ 이 값을 κ°€λ¦¬ν‚€λŠ” 이름은 λ³€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ»΄ν“¨ν„°λŠ” λͺ¨λ“  데이터λ₯Ό 0κ³Ό 1둜 μ œμ–΄ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ‚¬λžŒμ€ 0κ³Ό 1둜 컴퓨터λ₯Ό μ œμ–΄ν•  수 μ—†μ£ . 그렇기에 μ‚¬λžŒμ—κ²Œ μ΅μˆ™ν•œ ν˜•νƒœλ‘œ 데이터λ₯Ό λ‹€λ£Ήλ‹ˆλ‹€.

μ΅μˆ™ν•œ ν˜•νƒœλΌ 함은 숫자, 문자, λ‚ μ§œ 등이 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό κ°„λ‹¨νžˆ 데이터 νƒ€μž…(Data Type) 이라고 λΆ€λ₯΄μ£ . λ³€μˆ˜λŠ” 이 데이터 νƒ€μž…μ„ 닀루기 μœ„ν•œ 제 1λ‹¨κ³„μž…λ‹ˆλ‹€.

κ°€λ Ή μš°λ¦¬κ°€ 5λΌλŠ” 데이터λ₯Ό 닀루렀고 ν•œλ‹€λ©΄ 5λΌλŠ” 데이터λ₯Ό μ €μž₯ν•  λ©”λͺ¨λ¦¬κ°€ ν•„μš”ν•©λ‹ˆλ‹€. μ»΄ν“¨ν„°μ˜ νŠΉμ • 연산을 거쳐 5λΌλŠ” λ°μ΄ν„°λŠ” μ–΄λ–€ λ©”λͺ¨λ¦¬μ˜ μ£Όμ†Œμ— λ‹΄κΈ°κ²Œ λ©λ‹ˆλ‹€.

단, 그것을 μ‚¬λžŒμ΄ μ•Œ μˆ˜λŠ” μ—†μœΌλ©° 혹 μ•Œμ•„λ„ λ§Žμ€ λΆˆνŽΈν•¨μ΄ 생기겠죠? μ΄λŸ¬ν•œ 이유둜 λ³€μˆ˜κ°€ μ €μž₯될 μœ„μΉ˜λ₯Ό κΈ°μ–΅ν•˜λŠ” 것이 λ°”λ‘œ λ³€μˆ˜μž…λ‹ˆλ‹€.

let a = 1;  // λ³€μˆ˜μ˜ μ„ μ–Έκ³Ό ν• λ‹Ή
a = 2;      // λ³€μˆ˜μ˜ μž¬ν• λ‹Ή

let이 λ¬΄μ—‡μΈμ§€λŠ” λ‹€μŒ μž₯을 μ§„ν–‰ν•˜λ©΄μ„œ μ–ΈκΈ‰ν•©λ‹ˆλ‹€.


μƒμˆ˜(Constant)

λ³€μˆ˜μ™€ λ™μΌν•œ 값을 μ°Έμ‘°ν•˜λŠ” μ΄λ¦„μ΄μ§€λ§Œ, λ³€ν•˜μ§€ μ•ŠλŠ” κ°’μœΌλ‘œ μ•½μ†λœ λ³€μˆ˜μž…λ‹ˆλ‹€.

ES6에 μ§„μž…ν•˜λ©΄μ„œ 생긴 κ°œλ…μœΌλ‘œ ν•œ 번 ν• λ‹Ήν•œ 값을 λ°”κΏ€ 수 μ—†λŠ” λ³€μˆ˜μž…λ‹ˆλ‹€. 보톡 λŒ€λ¬Έμžμ™€ λ°‘μ€„λ‘œ λ³€μˆ˜λ₯Ό μ„ μ–Έν•©λ‹ˆλ‹€. const LIMIT_NUM = 10000; 처럼 말이죠.

그럼 μ™œ λ“±μž₯ν•œ κ²ƒμΌκΉŒμš”?

이 λ‚΄μš©μ„ μ•ŒκΈ° μœ„ν•΄μ„œλŠ” κΈ°μ‘΄ λ³€μˆ˜λ₯Ό μ„ μ–Έν•˜λŠ” μ‹λ³„μž(identifier)인 var와 μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ 언어적 νŠΉμ„±μΈ ν˜Έμ΄μŠ€νŒ…(Hoisting), μŠ€μ½”ν”„(Scope) κ°œλ…μ„ μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€. 깊게 λ‹€λ£¨κΈ°μ—λŠ” λ„ˆλ¬΄ λ°©λŒ€ν•œ μ–‘μ΄λ―€λ‘œ, λ‹€λ₯Έ νŽ˜μ΄μ§€λ‘œ λΆ„λ¦¬ν•΄μ„œ μ •λ¦¬ν•˜κ² μŠ΅λ‹ˆλ‹€.

constλΌλŠ” μƒμˆ˜ν˜• μ‹λ³„μžμ˜ λ“±μž₯κ³Ό ν•¨κ»˜, μ—¬λŸ¬ 번 ν• λ‹Ήν•΄μ•Όν•˜λŠ” λ³€μˆ˜μ˜ ν•„μš”μ„±λ„ λšœλ ·ν•΄μ‘ŒμŠ΅λ‹ˆλ‹€. μƒμˆ ν–ˆλ˜ let이 κ·Έκ²ƒμΈλ°μš”, 이 μ‹λ³„μžλŠ” μ•½μ–΄κ°€ μ•„λ‹ˆλΌ λ™μ‚¬ν˜• let κ·Έ μžμ²΄μž…λ‹ˆλ‹€.

let a = 1; ν˜•νƒœλ‘œ var μ‹λ³„μžμ™€ λ™μΌν•œ μ½”λ”© ν‘œμ€€μœΌλ‘œ μž‘μ„±ν•˜λ©° μ—¬λŸ¬ 번 μž¬ν• λ‹Ήν•΄λ„ λ¬Έμ œκ°€ λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.


μ‹λ³„μž(Identifier)

λ³€μˆ˜, μƒμˆ˜, ν•¨μˆ˜μ˜ μ΄λ¦„μœΌλ‘œ μ§€μΉ­ν•œ 것을 μ‹λ³„μžλΌκ³  λΆ€λ¦…λ‹ˆλ‹€.

μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œ μ‹λ³„μžλ₯Ό μ •μ˜ν•˜λŠ” κ·œμΉ™μ΄ μžˆμŠ΅λ‹ˆλ‹€.

μ‹λ³„μž μ •μ˜ κ·œμΉ™

넀이밍 μ»¨λ²€μ…˜(Naming Convention)이라고도 ν•©λ‹ˆλ‹€.

  1. μ‹λ³„μžλŠ” λ°˜λ“œμ‹œ κΈ€μž, λ‹¬λŸ¬ 기호($), 밑쀄(_)둜 μ‹œμž‘ν•©λ‹ˆλ‹€.
  2. μ‹λ³„μžμ—λŠ” κΈ€μž, 숫자, λ‹¬λŸ¬ 기호, λ°‘μ€„λ§Œ μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€.
  3. μœ λ‹ˆμ½”λ“œ λ¬Έμžλ„ μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€.
  4. μ˜ˆμ•½μ–΄ λŠ” μ‹λ³„μžλ‘œ μ“Έ 수 μ—†μŠ΅λ‹ˆλ‹€. μ•„λž˜μ—μ„œ μ˜ˆμ•½μ–΄μ˜ μ’…λ₯˜λ₯Ό μ‚΄νŽ΄λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

μ˜ˆμ•½μ–΄μ˜ μ’…λ₯˜

ES5, 6 λ“± 버전이 μ—…λ°μ΄νŠΈ λ˜λ©΄μ„œ μΆ”κ°€λ˜λŠ” μ˜ˆμ•½μ–΄λ„ μžˆμŠ΅λ‹ˆλ‹€.

μ˜ˆμ•½μ–΄μ˜ μ’…λ₯˜(μ•ŒνŒŒλ²³ 순)
abstract arguments boolean break byte
case catch char class const
continue debugger default delete do
extends false final finally float
for function goto if implements
import in instanceof int interface
let long native new null
package private protected public return
short static super switch synchronized
this throw throws transient true
try typeof var void volatile
while with yield

μ‹λ³„μž ν‘œκΈ° 방식

이 μ‹λ³„μžλ₯Ό ν‘œκΈ°ν•˜λŠ” 방식에도 μ—¬λŸ¬κ°€μ§€κ°€ μžˆλŠ”λ°μš”, λŒ€ν‘œμ μΈ λ°©λ²•μœΌλ‘œλŠ” μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.

/* 카멜 μΌ€μ΄μŠ€(camelCase) */
// 1. λ³€μˆ˜
let firstName = 'aaa';
// 2. μƒμˆ˜
const FIRST_NAME = 'AAA';
// 3. ν•¨μˆ˜
const sum = () => {};

/* 파슀칼 μΌ€μ΄μŠ€(PascalCase) */
// 1. 클래슀 λ“±μ˜ 객체
class FirstName {};

/* 헝가리언 μΌ€μ΄μŠ€(typeHungarianCase) */
// 1. type + identifier
let strFirstName = 'string name';
// 2. DOM(Document object model)의 Node(λ‹¨μˆ˜)
const $myID = document.querySelector('#myID');
// 3. DOM의 λ…Έλ“œ(볡수)
const $$elem = document.querySelectorAll('.myID');

μ‹λ³„μž ν‘œκΈ°λ²•μ€ μ ˆλŒ€μ μΈ κ·œμΉ™μ΄ μ•„λ‹ˆκΈ° λ•Œλ¬Έμ—, ν”„λ‘œμ νŠΈμ™€ νŠΉμ • λ‚΄λΆ€ κ·œμ •μ— λ”°λ₯΄λŠ” 것이 λ§žμŠ΅λ‹ˆλ‹€!


λ¦¬ν„°λŸ΄(Literal)

였, μš°λ¦¬λŠ” 이미 μ‚¬μš©ν–ˆμŠ΅λ‹ˆλ‹€. let a = 1; κ·Έλ ‡μŠ΅λ‹ˆλ‹€. 1이 λ°”λ‘œ λ¦¬ν„°λŸ΄μ΄μ—μš”!

λ¦¬ν„°λŸ΄μ€ 값을 ν”„λ‘œκ·Έλž¨ μ•ˆμ—μ„œ 직접 μ§€μ •ν•˜λŠ” μ˜λ―Έμž…λ‹ˆλ‹€. 즉, λ¦¬ν„°λŸ΄μ€ 값을 λ§Œλ“œλŠ” λ°©λ²•μž…λ‹ˆλ‹€. μžλ°”μŠ€ν¬λ¦½νŠΈλŠ” κ°œλ°œμžκ°€ μ œκ³΅ν•˜λŠ” λ¦¬ν„°λŸ΄ 값을 λ°›μ•„ 데이터λ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€.

μ‹λ³„μžμ™€ λ¦¬ν„°λŸ΄μ˜ λΆ„λ¦¬λœ κ°œλ…μ„ μ •ν™•ν•˜κ²Œ μ΄ν•΄ν•˜κ³  λ„˜μ–΄κ°€λ΄…μ‹œλ‹€.

let a = 'a';

μ—¬κΈ°μ„œ aλŠ” μ‹λ³„μžμž…λ‹ˆλ‹€. λ‹Ήμ—°νžˆ, 'a'λŠ” λ¦¬ν„°λŸ΄μž…λ‹ˆλ‹€. 그럼과 λ™μ‹œμ— μ‹λ³„μž a의 κ°’ μž…λ‹ˆλ‹€. μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œλŠ” λ”°μ˜΄ν‘œ(큰 λ”°μ˜΄ν‘œλ„ 상관 μ—†μŠ΅λ‹ˆλ‹€)λ₯Ό 톡해 μ‹λ³„μžμ™€ λ¦¬ν„°λŸ΄μ„ κ΅¬λΆ„ν•©λ‹ˆλ‹€!

λ¦¬ν„°λŸ΄ ν‘œκΈ°λ²•μ— λŒ€ν•œ μžμ„Έν•œ λ‚΄μš©μ€ μ—¬κΈ°λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.




ν”„λ‘œκ·Έλž¨ μ½”λ“œλ₯Ό μž‘μ„±ν•¨μ— μžˆμ–΄μ„œ, μš°λ¦¬λŠ” μ»΄ν“¨ν„°μ—κ²Œ μ§€μ‹œλ₯Ό ν•  ν•„μš”κ°€ μžˆμŠ΅λ‹ˆλ‹€. 무엇을, μ–΄λ–»κ²Œ μ“Έ 것인지λ₯Ό 말이죠. 이 μ—­ν•˜λ₯Ό ν•˜λŠ” λ‹¨μœ„κ°€ 이 νŽ˜μ΄μ§€μ—μ„œ μ„€λͺ…ν•  κ²ƒλ“€μž…λ‹ˆλ‹€.

λ¬Έ(statement)

ν”„λ‘œκ·Έλž¨μ€ 무엇을 κΈ°μ€€μœΌλ‘œ μˆ˜ν–‰λ κΉŒμš”? μˆ˜ν–‰ λ‹¨κ³„λ³„λ‘œ 묢어놓은 λͺ…λ Ήμ–΄μ˜ μ§‘ν•©, 그것이 λ°”λ‘œ λ¬Έμž…λ‹ˆλ‹€.

문의 ꡬ성은 μ—¬λŸ¬κ°€μ§€μž…λ‹ˆλ‹€. μ—°μ‚°μž(Operator), ν‘œν˜„μ‹(Expression), ν‚€μ›Œλ“œ(Keyword) λ“±μœΌλ‘œ 이루어지며, λ°˜λ“œμ‹œ μ„Έλ―Έμ½œλ‘ (;)으둜 λλ‚©λ‹ˆλ‹€.

  • 단, μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œλŠ” ASI(Automatic Semicolon Insertion, μžλ™ μ„Έλ―Έμ½œλ‘  μ‚½μž…)μ΄λΌλŠ” κΈ°λŠ₯이 μ‘΄μž¬ν•©λ‹ˆλ‹€. ASIλŠ” μžλ°”μŠ€ν¬λ¦½νŠΈ μ½”λ“œμ˜ μ„Έλ―Έμ½œλ‘  λˆ„λ½μ„ 엔진이 μžλ™μœΌλ‘œ μ‚½μž…ν•˜μ—¬ μ •μƒμ μœΌλ‘œ 해석할 수 있게 ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‹ˆ 일반적인 μ„Έλ―Έμ½œλ‘ μ˜ λˆ„λ½μœΌλ‘œ-μ œμ–΄λ¬Έ, 반볡문 λ“±μ˜ μ„Έλ―Έμ½œλ‘  λˆ„λ½μ΄ μ•„λ‹Œ- μžλ°”μŠ€ν¬λ¦½νŠΈ 싀행에 λ¬Έμ œκ°€ μΌμ–΄λ‚˜μ§€ μ•ŠμœΌλ‹ˆ κ±±μ •ν•˜μ§€ λ§ˆμ„Έμš”!

κ·Έλž˜μ„œ, μ •ν™•νžˆ 문이 λ­˜κΉŒμš”? λ³΅μž‘ν•˜κ²Œ μƒκ°ν•˜μ§€ 말고, μ„Έλ―Έμ½œλ‘ μ΄ λλ‚˜κΈ° 전에 μ—°κ²°λ˜μ–΄ μžˆλŠ” λΆ€λΆ„ 뢀뢄이 μ „λΆ€ 문이라고 μ΄ν•΄ν•˜μ„Έμš”!

/* 문듀은 μœ„μ—μ„œ μ•„λž˜λ‘œ μ‹€ν–‰λ©λ‹ˆλ‹€.
 * λ¬Όλ‘  μˆœμ„œλŠ” 쑰건문, 반볡문, ν•¨μˆ˜ 호좜 λ“±μœΌλ‘œ 변경될 수 μžˆμŠ΅λ‹ˆλ‹€.
 */
let hello = 'hello!';
const YOU = 'Chalie';

while(true){
  if(hello === 'hello!'){
    console.log(hello + ' ' + YOU);
    hello = 'bye!'
  } else {
    console.log(hello + ' ' + YOU);
    break;
  }
}

ν‘œν˜„μ‹

엔진이 μ½”λ“œλ₯Ό ν•΄μ„ν•˜λ©΄ 값이 λ˜λŠ” κ΅¬λ¬Έμž…λ‹ˆλ‹€.

μ–΄λ ΅κ²Œ ν‘œν˜„ν•˜λ©΄ ν•˜λ‚˜μ˜ κ°’μœΌλ‘œ ν‰κ°€λ˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ’…λ₯˜λŠ” μ•„λž˜μ™€ κ°™μ£ .

  1. κ°’(λ¦¬ν„°λŸ΄)
  2. λ³€μˆ˜
  3. 객체 ν”„λ‘œνΌν‹°
  4. λ°°μ—΄ μš”μ†Œ
  5. ν•¨μˆ˜ 호좜
  6. ν”Όμ—°μ‚°μžμ™€ μ—°μ‚°μžμ˜ μ‘°ν•© λ“±

예λ₯Ό λ“€μ–΄λ³ΌκΉŒμš”?

1       // 숫자 1μž…λ‹ˆλ‹€.
1 * 2   // 숫자 2μž…λ‹ˆλ‹€.
1 === 2 // λ‹€λ₯΄λ‹ˆκΉŒ falseμ£ ?

이처럼 ν‰κ°€λœ μ΄ν›„μ˜ 값을 ν‘œν˜„μ‹μ΄λΌκ³  ν•©λ‹ˆλ‹€.


ν‘œν˜„μ‹κ³Ό λ¬Έ

그럼 ν—·κ°ˆλ¦΄ 수 μžˆμŠ΅λ‹ˆλ‹€. λΉ„μŠ·ν•˜μ§€ μ•Šλ‚˜μš”? μ΄λ ‡κ²Œ μ΄ν•΄ν•˜μ„Έμš”. 문은 ν‘œν˜„μ‹μ˜ μƒμœ„ μ§‘ν•© μž…λ‹ˆλ‹€.

λ°”λ‘œ μ½”λ“œλ₯Ό λ³ΌκΉŒμš”?

// μ„ μ–Έλ¬Έ(Declaration statement) : ν‘œν˜„μ‹μ„ ν¬ν•¨ν•˜λŠ” λ¬Έ
let num;
// ν• λ‹Ήλ¬Έ(Assignment statement) : ν‘œν˜„μ‹μ΄μž λ¬Έ κ·Έ 자체
num = 5;
// μ„ μ–Έλ¬Έ
const MAX_NUM = num * 10;
// ν• λ‹Ήλ¬Έ
num = 0;

ν‘œν˜„μ‹μ€ 값을 λ§Œλ“€μ§€λ§Œ κ·Έ μ΄μƒμ˜ ν–‰μœ„λŠ” λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 문은 κ·Έ μ΄μƒμ˜ ν–‰μœ„κ°€ κ°€λŠ₯ν•˜μ£ . λ”°λΌμ„œ ν‘œν˜„μ‹μ˜ μƒμœ„ 집합이라고 μ΄ν•΄ν•˜μ‹œλŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.




2021-09-04, InSeong-Soκ°€ μž‘μ„±ν•œ μͺ½μ§€ μ‹œν—˜μ„ μŠ€ν„°λ””μ›κ³Ό ν•¨κ»˜ μ§„ν–‰ν•œ ν›„ μ˜λ¬Έμ μ„ κ°€μ§€λ‹€ ν•΄κ²°ν•œ λ‚΄μš©

βœ… var, let, const의 ν˜Έμ΄μŠ€νŒ…

의문점

  • var 만 ν˜Έμ΄μŠ€νŒ… λœλ‹€κ³  ν•˜μ…¨λŠ”λ° let, const도 ν˜Έμ΄μŠ€νŒ… λ˜μ§€λ§Œ μ•‘μ„ΈμŠ€κ°€ λΆˆκ°€λŠ₯ν•œ κ²ƒμœΌλ‘œ μ•Œκ³  μžˆμŠ΅λ‹ˆλ‹€.

정리 된 λ‚΄μš©

  • μž‘μ„±μžκ°€ 잘λͺ» μ•Œκ³  μžˆμ—ˆμœΌλ©°, TDZ(Temporal Dead Zone)에 μ˜ν•΄ ReferenceErrorκ°€ λ‚˜λ―€λ‘œ ν˜Έμ΄μŠ€νŒ…μ€ μ‹€ν–‰λ˜λ‚˜ μ•‘μ„ΈμŠ€ μ‹œμ μ—μ„œ μ—λŸ¬λ₯Ό λ±‰λŠ” κ²ƒμž…λ‹ˆλ‹€.

  • μ°Έμ‘° Link


βœ… ν‘œν˜„μ‹κ³Ό 문의 ꡬ뢄


의문점

  • μ±…μ—λŠ” var a = 3; μ΄λΌλŠ” 문은 λ³€μˆ˜μ˜ μ„ μ–Έκ³Ό 할당을 같이 μž‘μ„±ν•˜λŠ” 함좕 ν‘œν˜„μΈλ° 이런 함좕 문은 κ°’μœΌλ‘œ 평가될 수 μ—†μ–΄μ„œ ν‘œν˜„μ‹μ΄ μ•„λ‹ˆλΌκ³  μ ν˜€μžˆμŠ΅λ‹ˆλ‹€... 그럼 const arr = Array.from({length:3}, () => 0);은 λ¬Έ μ•„λ‹Œκ°€μš”?

정리 된 λ‚΄μš©

λ§žμŠ΅λ‹ˆλ‹€..! 정닡은 λ¬Έμ΄μ—ˆμŠ΅λ‹ˆλ‹€. κΈ€λ‘œλ§Œ μ΄ν•΄ν•΄μ„œ ν‘œν˜„μ‹μ΄λΌκ³  μƒκ°ν–ˆμŠ΅λ‹ˆλ‹€.

ν† λ‘  끝에 μ •λ¦¬ν•˜μžλ©΄ μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.

  1. 선언문은 ν‘œν˜„μ‹μ„ 포함(ν‘œν˜„μ‹μ΄ μ•„λ‹ˆλ‹€), λ¬Έμž…λ‹ˆλ‹€.
    • μ„ μ–Έλ¬Έμ—λŠ” μ’Œν•­μ— ν‚€μ›Œλ“œκ°€ λ“€μ–΄κ°‘λ‹ˆλ‹€.
    • var x; λ˜λŠ” var x = 3; λͺ¨λ‘ λ¬Έμž…λ‹ˆλ‹€.
  2. 할당문은 ν‘œν˜„μ‹μ΄κ³ , λ¬Έμž…λ‹ˆλ‹€.
    • x = 3; λ˜λŠ” 3 λͺ¨λ‘ ν‘œν˜„μ‹μž…λ‹ˆλ‹€.