We run a function like a wizard invokes a spell, by proclaiming the function's name, followed by the function call operator, ( ), introduced in Chapter 5, "Operators":
funcName( )
(You can almost detect the faint odor of smoldering mandrake root in the air.)
The parentheses may contain any parameters defined by the function. If the function defines no parameters, the parentheses are left empty. Let's try invoking our sayHi( ) function, which has no parameters, to get the hang of basic function invocation.
Here, again, is our sayHi( ) function declaration:
function sayHi ( ) { trace("Hi there!"); }
And here's our sayHi( ) function invocation:
sayHi( );
When that line is executed, sayHi( ) is invoked, so its function body runs, causing "Hi there!" to appear in the Output window.
You can see that typing sayHi( ); is more convenient than typing the whole trace( ) statement, and the function name sayHi is a more meaningful description of what our code does. Using thoughtful function names makes our code more readable, almost like human sentences.
Before we continue, notice the semicolon at the end of the function call:
sayHi( );
We add the semicolon because a function call is a complete statement, and good form dictates that all statements should end in a semicolon.
Believe it or not, we've just learned the basics of creating and invoking functions. Not too shabby. Functions keep your code centralized and easier to maintain, especially when you need to perform the same operation repeatedly throughout your program. Functions become even more powerful when used with parameters, which we'll consider next.
Copyright © 2002 O'Reilly & Associates. All rights reserved.