Συναρτήσεις

Μπορούμε να δημιουργούμε συναρτήσεις, οι οποίες θα εκτελούν μία συγκεκριμένη λειτουργία. Με αυτόν τον τρόπο, αν η ίδια λειτουργία χρειάζεται να εκτελεστεί σε διάφορα σημεία της σελίδας, αντί να γράφουμε για κάθε ένα από αυτά τον απαιτούμενο κώδικα, αρκεί να δημιουργήσουμε μία συνάρτηση που θα περιέχει τον κώδικα που χρειάζεται, και να την καλούμε όποτε κρίνεται αναγκαίο. Η σύνταξη μιας συνάρτησης έχει ως εξής:

function όνομα_συνάρτησης ( παράμετρος1, παράμετρος2, ..., παράμετροςN)
{
    κώδικας που εκτελείται μέσα στη συνάρτηση
}

Κατά την κλήση μιας συνάρτησης, οι παράμετροι μπορούν να είναι διάφορες τιμές ή μεταβλητές. Αν δε θέλουμε να περνάμε παραμέτρους σε μία συνάρτηση, γράφουμε τις παρενθέσεις χωρίς περιεχόμενο ενδιάμεσα.

Π.χ.

<html>
<head>
<script type="text/javascript">
function click_button ()
{
    alert ( 'You clicked the button' );
} // end function click_button
</script>
</head>

<body>
<input type="button" value="Click me" onclick="click_button ();" />
</body>
</html>

Στο παραπάνω παράδειγμα, έχουμε δημιουργήσει τη συνάρτηση click_button(). Κάθε φορά που κάνουμε κλικ στο button, καλούμε τη συνάρτηση αυτή, η οποία αναλαμβάνει να εμφανίσει αντίστοιχο μήνυμα στην οθόνη του χρήστη.

Π.χ.

<html>
<head>
<script type="text/javascript">
function add_numbers ( x, y )
{
    alert ( x + y );
} // end function click_button
</script>
</head>

<body>
<input type="button" value="Click me" onclick="add_numbers ( 3, 6 );" />
</body>
</html>

Στο παραπάνω παράδειγμα, η συνάρτηση add_numbers δέχεται δύο ορίσματα. Κάνοντας κλικ στο button, καλούμε τη συνάρτηση με τιμές 3 και 6. Από εκεί και πέρα, η συνάρτηση εμφανίζει το αποτέλεσμα της προσθήκης των δύο αριθμών.

Κάποιες φορές είναι απαραίτητο μία συνάρτηση να επιστρέφει μία τιμή όταν καλείται. Για την επιστροφή μιας τιμής, χρησιμοποιείται ή δήλωση return. Το παραπάνω παράδειγμα θα μπορούσε να γραφεί ως εξής:

<html>
<head>
<script type="text/javascript">
function add_numbers ( x, y )
{
    return ( x + y );
} // end function add_numbers
</script>
</head>

<body>
<input type="button" value="Click me" onclick="alert ( add_numbers ( 3, 6 ) );" />
</body>
</html>

Παρατηρούμε ότι μέσα στη συνάρτηση alert της javascript, περνάμε σαν όρισμα τη συνάρτηση που δημιουργήσαμε με τα ορίσματα που θέλουμε. Η δεύτερη επιστρέφει με τη βοήθεια της return το αποτέλεσμα της προσθήκης των δύο αριθμών (δηλαδή το 9) και η alert αναλαμβάνει την εμφάνισή του σε νέο παράθυρο.

Όπως έχουμε αναφέρει, αν δηλώσουμε μία μεταβλητή μέσα σε μία συνάρτηση, η τελευταία θα ονομάζεται τοπική μεταβλητή και μπορεί να χρησιμοποιηθεί μόνο μέσα στη συνάρτηση και όχι έξω από αυτή. Αν κάποια μεταβλητή είναι καθολική, δηλαδή δεν δηλώνεται μέσα σε συνάρτηση, μπορεί να χρησιμοποιηθεί από οποιαδήποτε συνάρτηση.