To read the article online, visit http://www.4GuysFromRolla.com/webtech/faq/Beginner/faq5.shtml

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
%>


Article Information
Article Title: Functions in ASP
Article Author: Scott Mitchell
Article URL: http://www.4GuysFromRolla.com/webtech/faq/Beginner/faq5.shtml


Copyright 2017 QuinStreet Inc. All Rights Reserved.
Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers