λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Javascript

μžλ°”μŠ€ν¬λ¦½νŠΈ : ν•¨μˆ˜

by μ½”νŒŒμΉ΄ 2022. 7. 26.
728x90

ν•¨μˆ˜

ν•¨μˆ˜λŠ” ν”„λ‘œκ·Έλž¨μ—μ„œ 반볡적으둜 μ‚¬μš©λ˜λŠ” κΈ°λŠ₯을 λ§Œλ“€μ–΄λ‚΄κΈ° μœ„ν•œ μ½”λ“œλ“€μ˜ μ§‘ν•©μž…λ‹ˆλ‹€.


선언적 ν•¨μˆ˜

선언적 ν•¨μˆ˜λŠ” κ°€μž₯ 일반적인 ν˜•νƒœλ‘œ, ν•¨μˆ˜λͺ…이 μžˆλŠ” ν•¨μˆ˜μž…λ‹ˆλ‹€.

function func(){
    document.write("ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.1")
}
func();
결과보기
ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.1

읡λͺ… ν•¨μˆ˜

읡λͺ… ν•¨μˆ˜λŠ” 말 κ·ΈλŒ€λ‘œ ν•¨μˆ˜μ˜ 이름이 μ—†μœΌλ©°, λ³€μˆ˜μ˜ 이름을 μ“΄ ν•¨μˆ˜μž…λ‹ˆλ‹€. ν•¨μˆ˜λ₯Ό μž¬μ‚¬μš©ν•˜μ§€ μ•Šμ„ 경우, 읡λͺ…ν•¨μˆ˜λ₯Ό λ§Œλ“€μ–΄μ„œ μ‚¬μš©ν•©λ‹ˆλ‹€.

const func = function(){
    document.write("ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.2");
}
func();
결과보기
ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.2

λ§€κ°œλ³€μˆ˜ ν•¨μˆ˜

ν•¨μˆ˜μ˜ λ§€κ°œλ³€μˆ˜λž€ ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•  λ•Œ 인수둜 μ „λ‹¬λœ 값을 ν•¨μˆ˜ λ‚΄λΆ€μ—μ„œ μ‚¬μš©ν•  수 있게 ν•΄μ£ΌλŠ” λ³€μˆ˜μž…λ‹ˆλ‹€. λ˜ν•œ, ν•¨μˆ˜μ˜ μΈμˆ˜λŠ” ν•¨μˆ˜κ°€ 호좜될 λ•Œ ν•¨μˆ˜λ‘œ 값을 μ „λ‹¬ν•΄μ£ΌλŠ” λ³€μˆ˜λ₯Ό κ°€λ¦¬ν‚΅λ‹ˆλ‹€.

function func(str){           //str=λ³€μˆ˜, func의 값을 μ „λ‹¬λ°›μ•˜λ‹€λŠ” 의미
    document.write(str)
}
func("ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.3");
결과보기
ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.3

리턴값 ν•¨μˆ˜

λ¦¬ν„΄κ°’μ΄λž€ ν•¨μˆ˜κ°€ μ–΄λ– ν•œ κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κ³  κ·Έ κ²°κ³Όλ₯Ό ν˜ΈμΆœν•œ 곳으둜 λŒλ €μ£ΌλŠ” 값을 λ§ν•©λ‹ˆλ‹€. ν•¨μˆ˜κ°€ μ–΄λ– ν•œ κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κ³  λŒλ €μ€„ 값이 있으면 return λͺ…령을 μ‚¬μš©ν•©λ‹ˆλ‹€.

function func(){
    const str = "ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.4";
    return str;
}
document.write(func());
결과보기
ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.4

ν™”μ‚΄ν‘œ ν•¨μˆ˜

ECMAScript 2015(ES6)에 μΆ”κ°€λœ λ‚΄μš©μž…λ‹ˆλ‹€. ν™”μ‚΄ν‘œ ν•¨μˆ˜λ₯Ό μ΄μš©ν•˜λ©΄ ν•¨μˆ˜ ν‘œν˜„μ‹λ³΄λ‹€ λ‹¨μˆœν•˜κ³  κ°„κ²°ν•œ λ¬Έλ²•μœΌλ‘œ ν•¨μˆ˜λ₯Ό μ„ μ–Έν•  수 μžˆμŠ΅λ‹ˆλ‹€.

//function func(){
//    document.write("ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€5")
//}
//func();
    
func = () => {  //ν•¨μˆ˜ function을 ν™”μ‚΄ν‘œ 기호둜 μƒλž΅
    document.write("ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.5")
}
func();

func = () => document.write("ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.5");  //μ€‘κ΄„ν˜Έ μƒλž΅ν•˜μ—¬ ν•œμ€„λ‘œ ν•¨μˆ˜ μ„ μ–Έ κ°€λŠ₯
func();
결과보기
ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€.5
728x90

λŒ“κΈ€

κ°μ‚¬ν•©λ‹ˆλ‹€. πŸ¦™

CSS
κ΄‘κ³  쀀비쀑