ASP Function과 Sub의 차이

ASP Function과 Sub의 차이

Function(함수)은 일과처리와 함께 결과값 리턴이 필요할때 사용합니다 예를 들자면
Function 함수명(Param)

1
2
3
4
5
6
7
8
If Param = "a" Then
str = "aaaa"
Else
str = "none"
End If
함수명 = str
End Function
Response.Write 함수명("a")

이와 같이 사용하게 되면 값은 aaaa가 찍히게 됩니다
Sub(프로시저)의 경우는 일괄의 처리를 주로 하게 됩니다.
Sub 함수명(param)

1
2
3
4
5
6
7
If param = "a" Then
Response.Write "aaaa"
Else
Response.Write "none"
End If
End Sub
Call Sub("a") 또는 Sub "a"

결과는 마찬가지로 aaaa가 찍힐 것입니다.
이 두개가 뭐가 틀리냐라고 다시 물으 실수도 있으시겠지만
일괄의 처리만을 하고 끝내는 것과 일괄의 처리 후 값을 리턴하는 것은 엄연히 큰 차이가 있습니다.
아마도 그 차이는 프로그램을 하시면서 느끼게 되시리라 생각 됩니다.
저도 처음엔 어떨 때 Function을 써야 하고 어떨 때 Sub를 써야 할지 몰랐습니다.
때로는 function으로 선언 하여도 마치 Sub를 선언 한듯이 쓸수 있게 되는 경우가 생깁니다.
그 경우는 function에 리턴을 설정 하지 않았을 경우인데, 이런 경우는 매우 좋지 않습니다.
에러가 나는 경우도 굉장히 많구요.
그러니 꼭 function과 sub는 구분하여 사용 하시라고 말씀드리고 싶네요

Share