관리 메뉴

λͺ©λ‘JS λ”₯λ‹€μ΄λΈŒ (23)

kingsubin

48μž₯. λͺ¨λ“ˆ

48μž₯. λͺ¨λ“ˆ 48-1. λͺ¨λ“ˆμ˜ 일반적 의미 λͺ¨λ“ˆμ΄λž€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ΅¬μ„±ν•˜λŠ” κ°œλ³„μ  μš”μ†Œλ‘œμ„œ μž¬μ‚¬μš© κ°€λŠ₯ν•œ μ½”λ“œ 쑰각을 λ§ν•œλ‹€. λͺ¨λ“ˆμ΄ μ„±λ¦½ν•˜λ €λ©΄ λͺ¨λ“ˆμ€ μžμ‹ λ§Œμ˜ 파일 μŠ€μ½”ν”„λ₯Ό κ°€μ§ˆ 수 μžˆμ–΄μ•Ό ν•œλ‹€. λͺ¨λ“ˆμ€ κ°œλ³„μ  μ‘΄μž¬λ‘œμ„œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜κ³Ό λΆ„λ¦¬λ˜μ–΄ μ‘΄μž¬ν•œλ‹€. export 된 λͺ¨λ“ˆμ˜ μžμ‚°μ€ λ‹€λ₯Έ λͺ¨λ“ˆμ—μ„œ μž¬μ‚¬μš©ν•  수 μžˆλ‹€. μ΄λ•Œ 곡개된 λͺ¨λ“ˆμ˜ μžμ‚°μ„ μ‚¬μš©ν•˜λŠ” λͺ¨λ“ˆμ„ module consumer라 ν•œλ‹€. 48-2. μžλ°”μŠ€ν¬λ¦½νŠΈμ™€ λͺ¨λ“ˆ 이전에 JSλŠ” import, exportλ₯Ό μ§€μ›ν•˜μ§€ μ•Šμ•„ μ—¬λŸ¬ 개의 파일둜 λΆ„λ¦¬ν•˜μ—¬ script νƒœκ·Έλ‘œ λ‘œλ“œν•΄λ„ λΆ„λ¦¬λœ μžλ°”μŠ€ν¬λ¦½νŠΈ νŒŒμΌλ“€μ€ κ²°κ΅­ ν•˜λ‚˜μ˜ μžλ°”μŠ€ν¬λ¦½νŠΈ 파일 내에 μžˆλŠ” κ²ƒμ²˜λŸΌ λ™μž‘ν•œλ‹€. μ΄λŸ¬ν•œ μƒν™©μ—μ„œ μ œμ•ˆλœ 것이 CommonJS, Asynchronous Modul..

33μž₯. 7번째 데이터 νƒ€μž… Symbol

33μž₯. 7번째 데이터 νƒ€μž… Symbol 33-1. μ‹¬λ²Œμ΄λž€? Symbol은 ES6μ—μ„œ λ„μž…λœ 7번째 데이터 νƒ€μž…μœΌλ‘œ λ³€κ²½ λΆˆκ°€λŠ₯ν•œ μ›μ‹œ νƒ€μž…μ˜ 값이닀. Symbol 값은 λ‹€λ₯Έ κ°’κ³Ό μ€‘λ³΅λ˜μ§€ μ•ŠλŠ” μœ μΌλ¬΄μ΄ν•œ 값이닀. 주둜 μ΄λ¦„μ˜ 좩돌 μœ„ν—˜μ΄ μ—†λŠ” μœ μΌν•œ ν”„λ‘œνΌν‹° ν‚€λ₯Ό λ§Œλ“€κΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€. 33-2. μ‹¬λ²Œ κ°’μ˜ 생성 Symbol ν•¨μˆ˜ λ‹€λ₯Έ μ›μ‹œ 값은 λ¦¬ν„°λŸ΄ ν‘œκΈ°λ²•μ„ 톡해 값을 생성할 수 μžˆμ§€λ§Œ μ‹¬λ²Œ 값은 Symbol ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜μ—¬ 생성해야 ν•œλ‹€. μ΄λ•Œ μ‹¬λ²Œ 값은 μ™ΈλΆ€λ‘œ λ…ΈμΆœλ˜μ§€ μ•Šμ•„ 확인할 수 μ—†μœΌλ©°, λ‹€λ₯Έ κ°’κ³Ό μ ˆλŒ€ μ€‘λ³΅λ˜μ§€ μ•ŠλŠ” μœ μΌλ¬΄μ΄ν•œ 값이닀. const mySymbol = Symbol(); console.log(typeof mySymbol); // symbol console.log(mySymb..

34μž₯. μ΄ν„°λŸ¬λΈ”

34μž₯. μ΄ν„°λŸ¬λΈ” 34-1. μ΄ν„°λ ˆμ΄μ…˜ ν”„λ‘œν† μ½œ μ΄ν„°λ ˆμ΄μ…˜ ν”„λ‘œν† μ½œμ€ 순회 κ°€λŠ₯ν•œ 데이터 μ»¬λ ‰μ…˜μ„ λ§Œλ“€κΈ° μœ„ν•΄ ECMAScript 사양에 μ •μ˜ν•˜μ—¬ 미리 μ•½μ†ν•œ κ·œμΉ™μ΄λ‹€. ES6 μ΄μ „μ˜ 순회 κ°€λŠ₯ν•œ 데이터 μ»¬λ ‰μ…˜μ€ λ‚˜λ¦„μ˜ ꡬ쑰λ₯Ό 가지고 λ‹€μ–‘ν•œ λ°©λ²•μœΌλ‘œ μˆœνšŒν•  수 μžˆμ—ˆλ‹€. ES6μ—μ„œλŠ” 순회 κ°€λŠ₯ν•œ 데이터 μ»¬λ ‰μ…˜μ„ μ΄ν„°λ ˆμ΄μ…˜ ν”„λ‘œν† μ½œμ„ μ€€μˆ˜ν•˜λŠ” μ΄ν„°λŸ¬λΈ”λ‘œ ν†΅μΌν•˜μ—¬ for…of, spread, distructuring 의 λŒ€μƒμœΌλ‘œ μ‚¬μš©ν•  수 μžˆλ„λ‘ μΌμ›ν™”ν–ˆλ‹€. μ΄ν„°λŸ¬λΈ” ν”„λ‘œν† μ½œ (iterable protocol) Symbol.iteratorλ₯Ό ν”„λ‘œνΌν‹° ν‚€λ‘œ μ‚¬μš©ν•œ λ©”μ„œλ“œλ₯Ό 직접 κ΅¬ν˜„ν•˜κ±°λ‚˜ ν”„λ‘œν† νƒ€μž… 체인을 톡해 상속받은 Symbol.iterator λ©”μ„œλ“œλ₯Ό ν˜ΈμΆœν•˜λ©΄ μ΄ν„°λ ˆμ΄ν„° ν”„λ‘œν† μ½œμ„ μ€€μˆ˜ν•œ μ΄ν„°λ ˆμ΄ν„°λ₯Ό λ°˜ν™˜..