Script functions can be declared with parameters, which are passed to the function when it is called.
Parameters are declared by naming them in the
declaration tag, after the
NAME attribute and any scope
PRIVATE etc.) . Each parameter is a
local variable (here) inside the function:
<A NAME=banner title="Untitled" bg>
This function has two parameters,
When the function is called, its arguments are named in the tag (like
<banner title="Search Results" bg=white>
Since the arguments are named, they need not be given in order (like HTML). Nor are all
parameters required when calling: the
$title parameter was
declared with a default value of "
Untitled", so it will have
that value if unspecified in a call:
Parameters without default values (e.g.
$bg) are required
in calls, however. This provides the ability to force their setting
in situations where a default value might not be useful. For example,
a search-and-replace type function could require its search and buffer
parameters: it may not be sensible to search a default buffer. The
exception to this is start functions: since they have no explicit
"caller" to name arguments, no-default parameters in the start
function are initialized like a global variable, i.e. from the
appropriate environment, query, POST etc. variable of the same name.
The default value for a parameter can also be a variable:
<A NAME=banner title=$DefaultTitle bg>
In this case, if
$title is not specified in a call, it will
have the value of the global (never local) variable