When you think ASP, think...
Recent Articles
All Articles
ASP.NET Articles
ASPFAQs.com
Message Board
Related Web Technologies
User Tips!
Coding Tips

Sections:
Sample Chapters
Commonly Asked Message Board Questions
JavaScript Tutorials
MSDN Communities Hub
Official Docs
Security
Stump the SQL Guru!
XML Info
Information:
Feedback
Author an Article
Technology Jobs
ASP ASP.NET ASP FAQs Message Board Feedback ASP Jobs
Print this page.
Functions in ASP


You can write functions in ASP similar to the way you write them in VisualBASIC. It is good programming practice to use functions to modularize your code and to better provide reuse. To declare a subroutine (a function that returns no value), you simply type:

<%@ LANGUAGE="VBSCRIPT" %>
<%
    sub SubroutineName( Parameters to Pass In )
        'Code for Sub...
    end sub
%>

A function differs from a subroutine in the fact that it returns data. To declare a function, the syntax is similar:

<%@ LANGUAGE="VBSCRIPT" %>
<%
    function FunctionName( Parameters to Pass In )
        'Code for Function...
    end function
%>

Let's look at the code for a function that takes an integer value and returns the square of that value. Also included is code to call the function.

<%@ LANGUAGE="VBSCRIPT" %>
<%
    function Square(num)
        Square = num * num     end function


    'Returns 25
    Response.Write(Square(5))

    'Should print "40 is less than 8^2"
    if 40 < Square(8) then
        Response.Write("40 is less than 8^2")
    else
        Response.Write("8^2 is less than 40")
end if
%>

If you do not understand an if statement, this tutorial should help!

To return a value from a function, you need to say the function's name = some value. That value is what is returned. In this case, we are returning num (the number passed in) times itself, or essentially num^2.

Important! Whenever you call a function and expect it to return a value, you must use parenthesis to pass in the parameter(s). For example, we used Square(8). If you are calling a subroutine, you cannot use parenthesis. If we want to pass in value(s), we need to put a space after the sub name and then each parameter separated by a comma. Observe the example below:

<%@ LANGUAGE="VBSCRIPT" %>
<%
    sub PrintProfit(Revenue, Overhead, COGS, Admin)
        'Create a variable to store our profit
        Dim Profit

        Profit = CDbl(Revenue - (Overhead + COGS + Admin))

        Response.Write("$" & Profit)
    end sub


    'Call the sub with various values
    'Will output $100.0
    PrintProfit 150, 25, 10, 15

    'Will output $0.5 (a bad year!!)
    PrintProfit 200, 150, 45, 4.5
%>

FAQ Table of Contents   Variables in ASP Using Includes 



ASP.NET [1.x] [2.0] | ASPMessageboard.com | ASPFAQs.com | Advertise | Feedback | Author an Article