πŸ’» Programming/Javascript

[Javascript / μžλ°”μŠ€ν¬λ¦½νŠΈ] κ°•μ’Œ #10 - Functions ( ν•¨μˆ˜ )

μΌ€μ΄μΉ˜ 2015. 8. 5. 16:56

μ΄λ²ˆμ—λŠ” μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ ν•¨μˆ˜μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.  

ν•¨μˆ˜κ°€ 뭐냐? λͺ¨λ₯΄μ‹œλŠ” 뢄이 κ³„μ‹œλ €λ‚˜μš”? μžλ°”λ‚˜ C의 λ©”μ†Œλ“œ, ν•¨μˆ˜λž‘ λ˜‘κ°™μ€ κ²λ‹ˆλ‹€.

ν•¨μˆ˜λŠ” function ν‚€μ›Œλ“œλ₯Ό μ΄μš©ν•΄μ„œ μ •μ˜ν•˜λŠ”λ° function의 μ˜μ–΄ 의미λ₯Ό 찾아보면 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

1.λͺ…사 (μ‚¬λžŒμ‚¬λ¬Όμ˜) κΈ°λŠ₯
2.λͺ…사 행사, μ˜μ‹
3.동사 (μ œλŒ€λ‘œ) κΈ°λŠ₯ν•˜λ‹€[μž‘μš©ν•˜λ‹€] (=operate)

λ”°λΌμ„œ ν•¨μˆ˜λŠ” νŠΉμ • κΈ°λŠ₯을 ν•˜λŠ” λ†ˆμ΄κ΅¬λ‚˜~ 라고  μ΄ν•΄ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.

λ‚΄κ°€ μ›ν•˜λŠ” μ–΄λ–€ κΈ°λŠ₯을 ν•˜λ„λ‘ λ§Œλ“œλŠ” 것이죠.

 

자, 그럼 문법을 ν•œλ²ˆ μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

<script type="text/javascript">

function ν•¨μˆ˜λͺ…( νŒŒλΌλ―Έν„° 리슀트 )
{
  // statements
}

</script>

 

 

μœ„ 문법은 ν•¨μˆ˜λ₯Ό μ„ μ–Έν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ•„λž˜μ²˜λŸΌ μ‚¬μš©ν•  수 있죠. 

<script type="text/javascript">

function sayHello()
{
   alert("Hello there");
}

</script>

 

 

 

자, 그럼 μ΄λ ‡κ²Œ 선언해놓은 ν•¨μˆ˜λ₯Ό μ–΄λ–»κ²Œ ν˜ΈμΆœμ„ ν• κΉŒμš”?

 

λ„€~ κ·Έλ ‡μ£ ~ μ œκ°€ 늘 λ§ν•˜λŠ” "μ•„λž˜μ²˜λŸΌ" ν˜ΈμΆœν•˜λ©΄ λ˜λŠ”κ²λ‹ˆλ‹€~

 

<script type="text/javascript">

sayHello();

</script>

 

 

νŒŒλΌλ―Έν„°

μ΄λ²ˆμ—λŠ” νŒŒλΌλ―Έν„° μ‚¬μš©λ²•μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

 

μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ νŠΉμ§• 쀑 ν•˜λ‚˜κ°€  undefined typeμ΄μ—ˆλ‹€λŠ” 것을 κΈ°μ–΅ν•˜μ‹œλ‚˜μš”? λ³€μˆ˜λ₯Ό μ§€μ •ν• λ•Œ νƒ€μž…μ„ μ§€μ •ν•˜μ§€λ₯Ό μ•Šμ£ ?  

ν•¨μˆ˜λ‚΄μ— νŒŒλΌλ―Έν„°λ₯Ό λ„£μ„λ•Œλ„ νƒ€μž…μ„ μ§€μ •ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ•„λž˜μ²˜λŸΌ 말이죠. 

<script type="text/javascript">

function sayHello(name, age)
{
   alert( name + " is " + age + " years old.");
}

</script>

 

μœ„ μ†ŒμŠ€λ₯Ό λ³΄μ‹œλ©΄ sayHello()κ°€ νŒŒλΌλ―Έν„° λ‘κ°œλ₯Ό λ°›κ³ μžˆλ„€μš”. nameκ³Ό age.  

이 ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•  λ•Œμ—λŠ” νŒŒλΌλ―Έν„°λ₯Ό λ‘κ°œ λ„£μ–΄μ£Όλ©΄ λ˜λŠ” κ²λ‹ˆλ‹€. 

<script type="text/javascript">

sayHello('Zara', 7 );

</script>

 

sayHello ν•¨μˆ˜μ— 'Zara' λž‘ 7을 νŒŒλΌλ―Έν„°λ‘œ λ„˜κ²Όλ„€μš”. Zara의 ν™‘λ”°μ˜΄ν‘œλŠ” μŠ€νŠΈλ§μ„ μ˜λ―Έν•©λ‹ˆλ‹€. ZaraλΌλŠ” μŠ€νŠΈλ§μ„ νŒŒλΌλ―Έν„°λ‘œ λ„˜κΈ΄λ‹€λŠ” 말이죠. 

return문

μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ ν•¨μˆ˜λ„ 결과값을 λ°˜ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 

 

예제λ₯Ό ν•œλ²ˆ λ³ΌκΉŒμš”? 

 

<script type="text/javascript">

function concatenate(first, last)
{
   var full;

   full = first + last;
   return  full;
}

</script>

μœ„ μ†ŒμŠ€λŠ” λ‘κ°œμ˜ νŒŒλΌλ―Έν„°λ₯Ό λ°›μ•„μ„œ λ‘κ°œλ₯Ό ν•©μΉœ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

 

이제 ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•΄μ„œ ν•¨μˆ˜μ—μ„œ 얻은 결과값을 경고창에 λ„μ›Œλ³΄κ² μŠ΅λ‹ˆλ‹€. 

<script type="text/javascript">

   var result;
   result = concatenate('Zara', 'Ali');
   alert(result );

</script>

 

 

ν•¨μˆ˜μ— λŒ€ν•΄μ„œ μ’€ 더 μžμ„Έν•œ λ‚΄μš©μ„ μ•Œκ³ μ‹ΆμœΌλ©΄ μ•„λž˜ 링크λ₯Ό μ°Έμ‘°ν•˜μ„Έμš” ^____^

 

 

 

Reference : http://www.tutorialspoint.com/javascript/javascript_functions.htm