Client-side γλώσσες περιγραφής σεναρίων - Javascript. Client - side γλώσσες περιγραφής σεναρίων

Σχετικά έγγραφα
ΕΠΛ 012. JavaScripts

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Περιεχόμενα. Πρόλογος...11

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

JAVASCRIPT 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο. Τι θα τυπωθεί στον παρακάτω κώδικα;

Εισαγωγή στην Αριθμητική Ανάλυση

Javascript. Πανεπιστήμιο Πελοποννήσου Τμήμα Επιστήμης & Τεχνολογίας Τηλεπικοινωνιών. Ευάγγελος Α. Κοσμάτος

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

2.1. Εντολές Σχόλια Τύποι Δεδομένων

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP)

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα

ΗΥ-150. Προγραμματισμός

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ

ΗΥ-150. Προγραμματισμός

Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου

Δικτυακά Πολυμέσα Ι: 2 η Εργασία. Να δημιουργήσετε μια HTML σελίδα η οποία να περιέχει μία φόρμα που να μοιάζει με αυτή της παρακάτω εικόνας:

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

Παιχνίδια σε Javascript

Pascal, απλοί τύποι, τελεστές και εκφράσεις

Εισαγωγή στην πληροφορική

Ανάπτυξη και Σχεδίαση Λογισμικού

Εργαστήριο #12. Βήμα 1 ο. Βήμα 2 ο. Βήμα 3 ο. Βήμα 4 ο.

Προγραμματισμός Ιστοσελίδων: Javascript II

Εισαγωγή στον Προγραμματισμό

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP.

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

ικτυακά Πολυμέσα Ι (Β Έτος, 3ο εξ) ιάλεξη #8η: Javascript: Τεχνικές εντοπισμού/διόρθωσης λαθών, τελεστές, δομές ελέγχου, βρόχοι επανάληψης

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Εισαγωγή στην γλώσσα προγραμματισμού C

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου

1. Απαιτήσεις εργασίας

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!).

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Εισαγωγή στη γλώσσα προγραμματισμού C++

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών

Document Objects. JavaScript Examples. Παράδειγμα 1: Απιθμόρ εικόνων ζε μία ζελίδα: <html> <body>

Προγραμματισμός I (Θ)

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

JAVASCRIPT EVENTS. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Θέματα Προγραμματισμού Διαδικτύου ~ PHP ~

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων

Δομημένος Προγραμματισμός (ΤΛ1006)

PHP 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

Εισαγωγή στον Προγ/μό Υπολογιστών

Javascript events. part 01

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

Γαβαλάς Δαμιανός

Εισαγωγή στην Tcl. Τί είναι η Tcl;

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Τεχνικός Εφαρμογών Πληροφορικής

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006

Κατανεμημένα Συστήματα. Javascript LCR example

ιαδικαστικός Προγραμματισμός

Εισαγωγή στη Matlab 2 Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

ΜΑΗΣ ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

Η γλώσσα προγραμματισμού Strange

[Α.10 και Α.11] Διεπαφή Εφαρμογής Παγκόσμιου Ιστού (Front-End Programming) ΥΛΙΚΟ ΠΡΟΣ ΜΕΛΕΤΗ

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

Δομές ελέγχου ροής προγράμματος

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : / id ot.com /

1. Απαιτήσεις εργασίας

Αντώνης Χρυσόπουλος Κατερίνα Κυπριώτη Στέλιος Μόσχογλου Θεοδόσης Σουργκούνης ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ PHP. PHP 2: The Return of PHP Η Δευτέρα Παρουσίαση

Εισαγωγή στον Προγραμματισμό

Αντικειµενοστρεφής Προγραµµατισµός

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος...

Η γλώσσα προγραμματισμού EEL

ΣΥΝΑΡΤΗΣΕΙΣ. Η σύνταξη μιας συνάρτησης σ ένα κελί έχει την γενική μορφή: =όνομα_συνάρτησης(όρισμα1; όρισμα2;.)

Τεχνικές εντοπισμού & διόρθωσης λαθών στη Javascript

Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19

WEB HTML. Web HTML MIDI. Web 5.1: HTML LAN

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

Κεφάλαιο 1. Τι θα μάθουμε σήμερα: -AND, OR, NOT. -Ενσωματωμένες συναρτήσεις. -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD. -Προτεραιότητα πράξεων

Γνωρίστε το Excel 2007

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

3 Αλληλεπίδραση Αντικειμένων

Προγραμματισμός Η/Υ (ΤΛ2007 )

Βασικές έννοιες προγραμματισμού

Πατώντας το πλήκτρο Enter ή το κουμπί Enter από την γραμμή τύπων εκτελείται η μαθηματική πράξη και παρουσιάζει το αποτέλεσμα του κελιού.

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram.

Transcript:

Client-side γλώσσες περιγραφής σεναρίων - Javascript Client - side γλώσσες περιγραφής σεναρίων Γενικά τα client-side σενάρια είναι μια κατηγορία προγραμμάτων που εκτελούνται στην πλευρά των χρηστών οι οποίοι επισκέπτονται κάποιο συγκεκριμένο Web site που προσφέρει αυτά τα προγράμματα σε συνδυασμό με τα περιεχόμενα του site (ιστοσελίδες). Η εκτέλεση των σεναρίων γίνεται από ένα πρόγραμμα που καλείται μηχανή εκτέλεσης σεναρίων. Το πρόγραμμα αυτό είναι ενσωματωμένο στο browser του εκάστοτε χρήστη. Ένα client-side σενάριο μπορεί να περιέχεται μέσα σε μια ιστοσελίδα του site. Επίσης είναι δυνατόν ένα client-side σενάριο να περιέχεται σε ένα ξεχωριστό αρχείο στο οποίο να αναφέρεται η ιστοσελίδα. Κατόπιν αιτήσεως του χρήστη στο Web server στον οποίο είναι εγκατεστημένο το site, όλα τα απαραίτητα αρχεία (η ιστοσελίδα που περιέχει ένα ή περισσότερα σενάρια, ή η ιστοσελίδα και τα αρχεία που περιέχουν τα σενάρια στα οποία αναφέρεται αυτή) φορτώνονται στο browser του χρήστη. Τα σενάρια εκτελούνται από τη μηχανή εκτέλεσης σεναρίων που είναι ενσωματωμένη στο browser και τα περιεχόμενα της ιστοσελίδας εμφανίζονται στο χρήστη μαζί με δεδομένα τα οποία πιθανόν προέκυψαν από την εκτέλεση των σεναρίων. Ένας περαιτέρω στόχος των client-side σεναρίων είναι η δυναμική αναπροσαρμογή και επεξεργασία των περιεχομένων της ιστοσελίδας που έχει φορτωθεί στο browser του χρήστη. Η αναπροσαρμογή γίνεται με βάση τα δεδομένα της ιστοσελίδας (που μπορεί να έχουν προκύψει από ένα server-side σενάριο) και ενέργειες του χρήστη από τις οποίες προκύπτουν δεδομένα (π.χ. εισαγωγή δεδομένων σε μια φόρμα ή ένα πίνακα) και γεγονότα (π.χ. πάτημα κουμπιού, μετακίνηση ποντικιού) που επεξεργάζεται ένα client-side σενάριο. Η αναπροσαρμογή της ιστοσελίδας συνήθως γίνεται χωρίς κάποια περαιτέρω επικοινωνία με το Web server στον οποίο είναι εγκαταστημένο το site. Πριν προχωρήσουμε στην πιο αναλυτική παρουσίαση μιας ευρέως διαδεδομένης γλώσσας περιγραφής clientside σεναρίων είναι απαραίτητο να ξεκαθαρίσουμε τη διαφορά μεταξύ client-side και server-side σεναρίων. Εν αντιθέσει με τα client-side σενάρια τα server-side σενάρια εκτελούνται από το Web server στον οποίο είναι εγκατεστημένο το Web site. Στόχος των server-side σεναρίων είναι η δυναμική κατασκευή των περιεχομένων των ιστοσελίδων που κατόπιν φορτώνονται στο browser του χρήστη (π.χ. τα αποτελέσματα μιας αναζήτησης). Η κατασκευή των ιστοσελίδων γίνεται με βάση δεδομένα που είναι αποθηκευμένα στο site (π.χ. κατάλογος βιβλίων) και δεδομένα που (π.χ χαρακτηριστικά του χρήστη, προτιμήσεις, λέξεις κλειδιά για αναζήτηση) έχει αποστείλει προηγουμένως ο χρήστης στο Web server μέσω κάποιας αίτησης που προέκυψε κατά τη διάρκεια της επίσκεψης του χρήστη σε κάποια άλλη ιστοσελίδα του ιδίου site. Kάποιες ευρέως διαδεδομένες γλώσσες περιγραφής server-side σεναρίων που αξίζει να αναφερθούν ενδεικτικά είναι οι PHP, JSP, ASP. Αντίστοιχα ανάμεσα στις πλέον διαδεδομένες γλώσσες περιγραφής client-side σεναρίων ξεχωρίζει η Javascript στην οποία θα επικεντρωθούμε στον Οδηγό αυτό.

Με τη JavaScript μπορείτε να φτιάξετε σενάρια που να εκτελούν αυτόματες εργασίες, π.χ όταν μια σελίδα του Web ανοίγει ή κλείνει. Επίσης μπορείτε να κάνετε την JavaScript να εκτελεί ενέργειες ανταποκρινόμενη σε ένα συγκεκριμένο γεγονός. Για παράδειγμα όταν ο χρήστης επιλέγει ένα κουμπί ή ένα σύνδεσμο, όταν εστιάζει από ένα στοιχείο μιας φόρμας σε ένα άλλο στοιχείο της κ.ο.κ. Οι ενέργειες αυτές μπορεί να είναι απλές. Τα σενάρια μπορεί να ανοίγουν νέα παράθυρα στον browser και να εμφανίζουν συγκεκριμένα HTML έγγραφα ή να παρουσιάζουν μια σελίδα επιλεγμένη από τον κατάλογο ιστορικού του browser. Μπορεί επίσης να είναι και περίπλοκες δηλαδή ένα σενάριο μπορεί να ελέγχει τα περιεχόμενα μιας φόρμας που θέλει να υποβάλει ένας χρήστης και στη συνέχεια να προειδοποιεί τον χρήστη αν τα δεδομένα είναι λάθος. Το σενάριο μπορεί να ψάξει για πληροφορίες σε μια μικρή βάση δεδομένων ή να κάνει πολύπλοκους υπολογισμούς οικονομικών στοιχείων. Ορισμός και εκτέλεση σεναρίων Javascript. Ο ορισμός ενός σεναρίου Javascript μέσα σε μια HTML ιστοσελίδα μπορεί να γίνει ανάμεσα σε ετικέτες <script language = javascript > Γενικά, τα σενάρια εκτελούνται αμέσως μόλις μια ιστοσελίδα φορτωθεί σε ένα browser. Αυτό δεν είναι πάντα επιθυμητό. Σε αρκετές περιπτώσεις θέλουμε ένα σενάριο να εκτελείται όταν φορτωθεί η ιστοσελίδα, ενώ σε άλλες περιπτώσεις επιθυμούμε να εκτελείται όταν ο χρήστης κάνει κάποια ενέργεια (πάτημα κουμπιού, μετακίνηση ποντικιού). Στην πρώτη περίπτωση, τοποθετούμε τα σενάρια στο <body> τμήμα της ιστοσελίδας. Στην δεύτερη περίπτωση τοποθετούμε τα σενάρια στο <head> </head> τμήμα της ιστοσελίδας. Παραδείγματα αυτών των δύο περιπτώσεων δίνονται παρακάτω: Σενάρια στο body. <html> <head> </head> <body> <script language="javascript">... Σενάρια στο head <html> <head> <script language="javascript">... </head> Όπως αναφέρθηκε προηγουμένως, τα σενάρια στο <head> </head> τμήμα της ιστοσελίδας εκτελούνται με βάση τις ενέργειες του χρήστη. Τα σενάρια αντιστοιχούν σε Javascript συναρτήσεις που περιγράφονται στο <head>

</head> τμήμα της ιστοσελίδας. Η εκτέλεση των συναρτήσεων αυτών επιτυγχάνεται με τον καθορισμό των γεγονότων που αντιστοιχούν στις ενέργειες του χρήστη που μας ενδιαφέρουν και τη συσχέτιση των γεγονότων αυτών με τις συναρτήσεις που πρέπει να εκτελεστούν. Τα προηγούμενα καθορίζονται ανάμεσα σε ετικέτες HTML στοιχείων της ιστοσελίδας που προσφέρουν τη δυνατότητα στο χρήστη να ενεργήσει και κατά συνέπεια να παράγει ένα γεγονός το οποίο θα έχει ως αποτέλεσμα την εκτέλεση μιας συνάρτησης. Ένα παράδειγμα δίνεται πιο κάτω. Η συνάρτηση myfunction() ορίζεται στο <head> </head> τμήμα της ιστοσελίδας. Στη φόρμα που ακολουθεί συσχετίζεται το πάτημα του κουμπιού της φόρμας με τη συνάρτηση. Αποτέλεσμα των προηγουμένων είναι η εκτέλεση της συνάρτησης όταν ο χρήστης πατήσει το κουμπί της φόρμας. <html> <head> <script language="javascript"> function myfunction() alert("hello"); </head> <body> <form> <input type="button" onclick="myfunction()" value="call function"> </form> <p> Πατώντας το κουμπί καλείται η συνάρτηση myfunction. </p> </html> Δεδομένα και Μεταβλητές. Οι βασικοί τύποι δεδομένων που μπορεί να διαχειριστεί κάποιος μέσω ενός σεναρίου Javascript είναι αριθμητικές τιμές (π.χ. 4, 3.14), αλφαριθμητικά (π.χ. hello world ) και λογικές τιμές true, false. Όσον αφορά στις αριθμητικές τιμές στη Javascript δεν γίνεται διάκριση μεταξύ ακεραίων και πραγματικών. Οι μεταβλητές σε ένα σενάριο Javascript είναι συμβολικά ονόματα με τα οποία μπορεί να γίνει αναφορά σε αριθμητικές τιμές, αλφαριθμητικά και λογικές τιμές. Μια μεταβλητή μπορεί να δηλωθεί χρησιμοποιώντας τη λέξη κλειδί var και το όνομα της μεταβλητής, ή ακόμα και χωρίς τη χρήση της λέξης κλειδί var. var x; var carname; Τιμές στις μεταβλητές αναθέτονται με τον τελεστή ανάθεσης =. x = 7; carname = lucile ; Τιμές μπορούν να ανατεθούν και κατά τη δήλωση των μεταβλητών. Αξίζει να αναφερθεί ότι σε μια μεταβλητή μπορεί να ανατεθούν τιμές οποιουδήποτε τύπου (αριθμητικές, λογικές, αλφαριθμητικά). var y = 19;

y = carim ; Στη Javascript υποστηρίζεται επίσης η δυνατότητα ορισμού πινάκων. var mycars = new Array(); mycars[0] = "Saab"; mycars[1] = "Volvo"; mycars[2] = "BMW"; Τέλος ο προσδιοριστής const στη δήλωση μιας μεταβλητής σημαίνει ότι η τιμή της μεταβλητής αυτής δεν επιτρέπεται να αλλάξει κατά τη διάρκεια εκτέλεσης του σεναρίου. Τελεστές. Αριθμητικοί τελεστές. Τελεστής Περιγραφή Χρήση + Πρόσθεση δύο αριθμητικών τελεστέων ή var x = 2; συνένωση δύο αλφαριθμητικών. var y = 5; var z; z= x+y; var s = "Hello"+"World"; - Αφαίρεση δύο αριθμητικών τελεστέων. z = x-7 * Πολ/σμος δύο αριθμητικών τελεστέων. z = 5*2 / Διαίρεση δύο αριθμητικών τελεστέων. z = y/x % Υπόλοιπο διαίρεσης δύο αριθμητικών z = 7%2 τελεστέων. ++ Μοναδιαία αύξηση τελεστέου. var x=2; x++; y= ++x; y= x++; -- Μοναδιαία μείωση τελεστέου. x--; --x;

Συγκριτικοί τελεστές. Τελεστής Περιγραφή Χρήση = = Ισότητα μεταξύ τελεστέων. 3==8 -> false = == Ισότητα μεταξύ τελεστέων και τύπων var x=3; αυτών των τελεστέων var y="3"; x==y -> true x===y -> false < Μικρότερο. x<y <= Μικρότερο ή ίσο. 5<=x > Μεγαλύτερο. y>4 >= Μεγαλύτερο ή ίσο. x>=y Τελεστές Ανάθεσης Τελεστής Περιγραφή Χρήση = Απλή ανάθεση σε τελεστέο. y = x +3; += Προσθετική αύξηση και ανάθεση σε x += 4; <=> x = x + 4; τελεστέο. -= Αφαιρετική μείωση και ανάθεση σε x -= 4; <=> x = x - 4; τελεστέο. *= Πολλαπλασιαστική αύξηση και x *= 4; <=> x = x * 4; ανάθεση σε τελεστέο. /= Διαιρετική μείωση και ανάθεση σε x /= 4; <=> x = x / 4; τελεστέο..λογικοί Τελεστές. Τελεστής Περιγραφή Χρήση && Λογική Σύζευξη. (x<3 && y<=5) Λογικό Διάζευξη. (x<3 y<=5)! Λογική Άρνηση.!(x>3) Δυαδικοί Τελεστές Τελεστής Περιγραφή Χρήση & Δυαδική Σύζευξη. x & y Δυαδική Διάζευξη. x y ^ Δυαδική Αποκλειστική Διάζευξη. x ^ y << Αριστερή Ολίσθηση. x >> 3 >> Δεξιά Ολίσθηση y << 4

Ειδικοί Τελεστές. Τελεστής Περιγραφή Χρήση Συνθήκη? Επιστρέφει Τιμή1 αν ισχύει η συνθήκη ή x=(y<0)? 5: 10 Τιμή1: Τιμή2 αν δεν ισχύει η συνθήκη. Τιμή2 typeof Επιστρέφει τον τύπο της τιμής του τελεστέου var x = hello ; στον οποίο εφαρμόζεται. typeof x; -> string number string boolean Εντολές Συνθήκης. Από άποψη συντακτικού, οι εντολές συνθήκης στη Javascript μοιάζουν κατά πολύ με αντίστοιχες εντολές άλλων γλωσσών προγραμματισμού όπως η C, C++ και Java. Γενικά όπως και στις προαναφερθείσες γλώσσες, έχουμε τη δυνατότητα να χρησιμοποιήσουμε εντολές if, if-else και switch. Συνοπτικά στον παρακάτω πίνακα περιγράφονται αυτές οι εντολές και δίδονται σύντομα παραδείγματα χρήσης τους.

Εντολή Σύνταξη Χρήση if if (συνθήκη) /* εντολές */ if - else if (συνθήκη) /* εντολές */ else /* εντολές */ if (συνθήκη) /*εντολές*/ else if(συνθήκη) /*εντολές*/ else /*εντολές*/ switch switch (expression) case τιμήl : /*εντολές*/ break; case τιμή2: /*εντολές */ break;... default : /*εντολές*/ <html> <body> <script language="javascript"> var d = new Date(); var time = d.gethours(); if (time<10) document.write( "<b>good morning</b>"); else if (time>=10 && time<16) document.write( "<b>good day</b>"); else document.write( "<b>hello World!</b>"); <p> This example demonstrates the if..else. </p> </html> <html> <body> <script language="javascript"> // You will receive a different // greeting based // on what day it is. var d=new Date(); theday=d.getday(); switch (theday) case 5: document.write("finally Friday"); break; case 6: document.write("super Saturday"); break; case 0: document.write("sleepy Sunday"); break; default: document.write( "I'm looking forward!"); </html>

Εντολές Επανάληψης. Παρόμοια με τις εντολές συνθήκης, οι εντολές επανάληψης της Javascript μοιάζουν με αντίστοιχες εντολές άλλων γλωσσών προγραμματισμού όπως η C, C++ και Java. Γενικά υπάρχουν 3 είδη εντολών επανάληψης, for, while και do-while. Το συντακτικό κάθε μίας από αυτές παρουσιάζεται συνοπτικά στον παρακάτω πίνακα μαζί με σύντομα παραδείγματα χρήσης τους. Εντολή Σύνταξη Χρήση for for ( αρχική ανάθεση <html> μεταβλητής; συνθήκη; <body> αύξηση/μείωση μεταβλητής;) <script language="javascript"> var i=0; /*εντολές*/ for (i=0;i<=10;i++) document.write("the number is " + i); document.write("<br />"); </html> while while (συνθήκη) <html> /*εντολές*/ <body> <script language="javascript"> var i=0; while (i<=10) document.write("the number is " + i); document.write("<br />"); i=i+1; </html> do-while do <html> /*εντολές*/ <body> while(συνθήκη) <script language="javascript"> var i=0; do document.write("the number is " + i); document.write("<br />"); i=i+1; while (i<0); </html>

Συναρτήσεις. Μια συνάρτηση ορίζεται χρησιμοποιώντας τη λέξη κλειδί function. Εν συνεχεία ακολουθεί το όνομα της συνάρτησης και εντός παρενθέσεων μια λίστα παραμέτρων των οποίων τα ονόματα χωρίζονται με,. Αν η συνάρτηση δεν δέχεται κάποιες παραμέτρους τότε η λίστα που περιέχεται εντός παρενθέσεων είναι κενή. Τέλος ακολουθεί το μπλοκ εντολών της συνάρτησης εντός αγκίστρων. Ακολουθεί παράδειγμα συνάρτησης. function square(number) return number * number; Το μπλοκ εντολών μιας συνάρτησης εκτελείται όταν καλεστεί μια συνάρτηση με συγκεκριμένες τιμές για τις παραμέτρους της. square (5) Μια συνάρτηση μπορεί να είναι αναδρομική, δηλαδή να καλεί τον εαυτό της. function factorial(n) if ((n == 0) (n == 1)) return 1 else var result = (n * factorial(n-1) ); return result // Μπορεί να καλεστεί όπως φαίνεται πιο κάτω: a=factorial(1) // returns 1 b=factorial(2) // returns 2 c=factorial(3) // returns 6 d=factorial(4) // returns 24 e=factorial(5) // returns 120 Μια συνάρτηση μπορεί να δέχεται σαν παράμετρο μια άλλη συνάρτηση η οποία εν συνεχεία καλείται στο μπλοκ εντολών της πρώτης. function map(f,a) var result = new Array; for (var i = 0; i!= a.length; i++) result[i] = f(a[i]); return result; //κλήση της συνάρτησης map(function(x) return x * x * x, [0, 1, 2, 5, 10]); // επιστρέφει [0, 1, 8, 125, 1000].

Έτοιμες Συναρτήσεις. Στον παρακάτω πίνακα παρουσιάζονται συνοπτικά διάφορες βοηθητικές συναρτήσεις που προσφέρει έτοιμες η Javascript καθώς και παραδείγματα χρήσης τους. Οι συναρτήσεις αυτές αφορούν στα παρακάτω επιμέρους θέματα: 1. Έλεγχος τύπου δεδομένων και μετατροπές από ένα τύπο δεδομένων σε ένα άλλο. 2. Αποτίμηση εκφράσεων. 3. Δημιουργία βοηθητικών παραθύρων. parseint(x, [radix]) parsefloat(x) isnan(x) eval(s) alert(msg) confirm(msg) prompt(msg) Δέχεται σαν παράμετρο ένα αλφαριθμητικό και προσπαθεί να το μετατρέψει σε μια αντίστοιχη ακέραια αριθμητική τιμή. Παραδείγματα. parseint("3 chances") //returns 3 <!--[if!supportlinebreaknewline]--> <!--[endif]--> parseint(" 5 alive") //returns 5 <!--[if!supportlinebreaknewline]--> <!--[endif]--> parseint("i have 3 computers") //returns NaN <!--[if!supportlinebreaknewline]--> <!--[endif]--> parseint("17", 8) //returns 15 Δέχεται σαν παράμετρο ένα αλφαριθμητικό και προσπαθεί να το μετατρέψει σε μια αντίστοιχη πραγματική αριθμητική τιμή. Παράδειγμα. parsefloat("-3.98 points") //returns -3.98 Δέχεται σαν παράμετρο ένα αλφαριθμητικό και επιστρέφει false αν το αλφαριθμητικό εκφράζει μια νόμιμη αριθμητική τιμή. Διαφορετικά επιστρέφει true. Δέχεται σαν παράμετρο ένα αλφαριθμητικό το οποίο εκφράζει μια Javascript έκφραση και την αποτιμά. Παράδειγμα. eval("8+3+1") //returns 12 <!--[if!supportlinebreaknewline]--> <!--[endif]--> Δέχεται σαν παράμετρο ένα αλφαριθμητικό και σαν αποτέλεσμα δημιουργεί ένα βοηθητικό παράθυρο στο οποίο εμφανίζεται το αλφαριθμητικό μαζί με ένα OK κουμπί που αποδεσμεύει το παράθυρο. Δέχεται σαν παράμετρο ένα αλφαριθμητικό και σαν αποτέλεσμα δημιουργεί ένα βοηθητικό παράθυρο στο οποίο εμφανίζεται το αλφαριθμητικό μαζί με ένα OK και ένα Cancel κουμπί. Παράδειγμα. var yourstate= confirm( "Are you sure you are ok?") if (yourstate) alert("good!") Δέχεται σαν παράμετρο ένα αλφαριθμητικό και σαν αποτέλεσμα δημιουργεί ένα βοηθητικό παράθυρο στο οποίο εμφανίζεται το αλφαριθμητικό μαζί με ένα OK, ένα Cancel κουμπί μια περιοχή στην οποία ο χρήστης μπορεί να εισάγει κείμενο. Παράδειγμα. var thename= prompt("please enter your name") alert(thename)

Χειριστές Συμβάντων Στη JavaScript μπορούμε να δηλώσουμε χειριστές συμβάντων ώστε να αντιδρά το πρόγραμμα μόλις συμβαίνει ένα γεγονός. Για παράδειγμα αν θέλουμε να συμβεί κάτι μόλις πατήσει ο χρήστης με το ποντίκι πάνω σε ένα στοιχείο της ιστοσελίδας προσθέτουμε τον χειριστή onclick στο στοιχείο αυτό. Το παρακάτω κουμπί μόλις πατηθεί θα εμφανίσει ένα μήνυμα Hello. <input type = "button" value ="Πάτησε με " onclick="alert('hello' )"> Στη JavaScript είναι διαθέσιμοι οι παρακάτω χειριστές συμβάντων Χειριστές Συμβάντων Παραθύρου (Window Events handlers ) onload onunload Λαμβάνει χώρα μόλις ολοκληρωθεί το φόρτωμα μιας σελίδας Λαμβάνει χώρα μόλις κλείσουμε μια σελίδα Χειριστές Συμβάντων Ποντικιού (Mouse Events handlers ) onmouseover onmouseout onclick ondblclick onmousedown onmouseup onmousemove Λαμβάνει χώρα όταν περάσει το ποντίκι πάνω από ένα αντικείμενο Λαμβάνει χώρα όταν απομακρυνθεί το ποντίκι από ένα αντικείμενο Λαμβάνει χώρα όταν κάνουμε κλικ σ' ένα αντικείμενο Λαμβάνει χώρα όταν κάνουμε διπλό κλικ σ' ένα αντικείμενο Λαμβάνει χώρα όταν πατάμε με το ποντίκι σ' ένα αντικείμενο Λαμβάνει χώρα όταν αφήσουμε το ποντίκι απ' ένα αντικείμενο που έχουμε κάνει κλικ Λαμβάνει χώρα όταν κουνάμε το ποντίκι συνέχεια πάνω απ' ένα αντικείμενο Χειριστές Συμβάντων Φόρμας (Form Events handlers ) onchange onsubmit onreset onblur onselect onfocus Λαμβάνει χώρα μόλις κάνουμε αλλαγή σε κάποιο στοιχείο της φόρμας Λαμβάνει χώρα μόλις υποβάλλουμε μια φόρμα Λαμβάνει χώρα μόλις μηδενίσουμε μια φόρμα Λαμβάνει χώρα μόλις αφήσουμε ένα αντικείμενο Λαμβάνει χώρα μόλις επιλέξουμε κάτι σε μια φόρμα Λαμβάνει χώρα μόλις κάνουμε ένα αντικείμενο ενεργό Αναφορά σε στοιχεία της ιστοσελίδας Αφού προσδιορίσουμε έναν κωδικό (id) σε ένα στοιχείο της ιστοσελίδας μπορούμε να αποκτήσουμε πρόσβαση σε αυτό και να αλλάξουμε τα χαρακτηριστικά του με την JavaScript χρησιμοποιώντας τη συνάρτηση getelementbyid().

Παράδειγμα εναλλαγής Εικόνας Στο παρακάτω παράδειγμα μόλις ο χρήστης περάσει το ποντίκι πάνω (onmouseover) από την εικόνα με κωδικό img1 εμφανίζεται μια άλλη εικόνα, ενώ με το που φεύγει το ποντίκι από την εικόνα επανεμφανίζεται η αρχική εικόνα <html> <head> <title>change Image</title> <script> function mouseoverimage() document.getelementbyid("img1").src = "download1.jpg"; function mouseoutimage() document.getelementbyid("img1").src = "download.jpg"; </head> <body> <img id="img1" src="download.jpg" onmouseover="mouseoverimage()" onmouseout="mouseoutimage()"/> </html> Αναφορά σε Φόρμες και σε Στοιχεία Φόρμας Μπορούμε να αναφερόμαστε σε μια φόρμα και σε στοιχεία της μέσω του κωδικού που θα προσδιορίσουμε, όπως στο παραπάνω παράδειγμα. Εναλλακτικά μπορούμε να χρησιμοποιήσουμε τον πίνακα forms[ ], ο οποίος περιέχει μια λίστα απ' όλα τα αντικείμενα φόρμας που υπάρχουν στο έγγραφο. Παρόμοια, μπορούμε να χρησιμοποιήσουμε την ιδιότητα (πίνακα) elements[ ] μιας φόρμας για να αναφερόμαστε στα στοιχεία μιας φόρμας, η οποία ιδιότητα είναι μια λίστα απ' όλα τα αντικείμενα-στοιχεία που περιέχει η φόρμα. Η αρίθμηση ξεκινά από το 0. Μπορούμε να αναφερθούμε στα στοιχεία μιας φόρμας με το όνομα ή τη θέση τους μέσα στον πίνακα στοιχείων. Για παράδειγμα, για να πάρουμε την τιμή ενός πλαισίου κειμένου με όνομα Lname που

βρίσκεται στη δεύτερη φόρμα secondform και είναι το τέταρτο κατά σειρά στοιχείο της φόρμας, μπορούμε να χρησιμοποιήσουμε έναν από τους εξής τέσσερις τρόπους : document.secondform.lname.value document.secondform.elements[3].value document.forms[1].lname.value document.forms[1].elements[3].value Παράδειγμα ελέγχου υποβολής φόρμας <html> <head> <script type="text/javascript"> function validate() x=document.myform at=x.email.value.indexof("@") code=x.code.value firstname=x.fname.value submitok="true" if (at==-1) alert("check email address!") submitok="false" if (code<1 code>10) alert("the number is not acceptable. Please retry.") submitok="false" if (firstname.length>10) alert("the name is not acceptable. Please retry.") submitok="false" if (submitok=="false") return false else return true </head> <body> <form name="myform" method="post" action="form_submitted.html" onsubmit="return validate()"> Email address : <input type="text" name="email" size="20"> <br /> Pick a number between 1-10 : <input type="text" name="code" size="20"> <br /> Choose a name (up to 10 characters) : <input type="text" name="fname" size="20"> <br /> <input type="submit" value="submit"> </form> </html>

Αντικείμενα JavaScript Το Αντικείμενο Window Το αντικείμενο window βρίσκεται στην κορυφή της ιεραρχίας των αντικειμένων και περιέχει ιδιότητες και μεθόδους που σχεδιάστηκαν για να παρέχουν πληροφορίες και να μας βοηθούν να επεξεργαζόμαστε το ίδιο το παράθυρο αλλά και το έγγραφο που περιέχει. Οι ιδιότητες του αντικειμένου window είναι οι εξής : defaultstatus, το προκαθορισμένο κείμενο της γραμμής κατάστασης. history, η λίστα ιστορικού του παραθύρου. length, ο αριθμός των πλαισίων (frames) του παραθύρου. name, το όνομα του παραθύρου. opener, αναφέρεται στο παράθυρο στο οποίο ένα σενάριο χρησιμοποίησε την εντολή window.open για να ανοίξει το τρέχον παράθυρο. parent, το γονικό παράθυρο σ' ένα σύνολο πλαισίων. self, το τρέχον παράθυρο. status, το κείμενο της γραμμής κατάστασης. top, το παράθυρο κορυφής. window, το τρέχον παράθυρο. Παράδειγμα 1ο Σε περίπτωση που θέλετε να προωθείτε αυτόματα ο επισκέπτης μια ιστοσελίδας σε μια άλλη με όνομα new_page.html (που είναι πιθανόν η Αρχική Σελίδα της νέα έκδοσης της τοποθεσίας σας), μπορείτε να χρησιμοποιήσετε την ιδιότητα location ως εξής: <Body onload='' location='new_page.html' ''> Παράδειγμα 2ο Εμφάνιση και κλείσιμο νέου παραθύρου <html> <head> <script type="text/javascript"> function openwin() mywindow=window.open("","","width=200,height=100"); mywindow.document.write("<p>this is 'mywindow'</p>"); function closewin() mywindow.close(); </head> <body> <input type="button" value="open 'mywindow'" onclick="openwin()" />

<input type="button" value="close 'mywindow'" onclick="closewin()" /> </html> Παράδειγμα 3ο Εμφάνιση κυλιόμενου μηνύματος στη γραμμή κατάστασης <HTML> <HEAD> <TITLE>Scrolling Message</TITLE> <SCRIPT> <!-- var winlength = 100; // guess at how many spaces wide the status bar is var speed = 200; // number of milliseconds between updates function scroll(count) var msg = "Κυλιόμενο Μήνυμα στη Γραμμή Κατάστασης (status bar)."; var out = " "; var cmd = "scroll("; if (count <= winlength && 0 < count) var c = 0; for (c = 0 ; c < count ; c++) out += " "; out += msg; else if (count <= 0) if (-count < msg.length) out += msg.substring(-count,msg.length); else count = winlength + 1; window.status = out; count--; cmd += count + ")"; window.settimeout(cmd,speed); //--> </SCRIPT> </HEAD> <BODY ONLOAD="window.setTimeout('scroll(winLength)',speed);"> </BODY> </HTML>

Το Αντικείμενο Document Οι ιδιότητες του αντικειμένου document είναι οι εξής : alinkcolor, το χρώμα ενός ενεργού συνδέσμου. anchor, ένας σύνδεσμός του εγγράφου anchors, ένας πίνακας που περιέχει όλους τους συνδεσμούς του εγγράφου. bgcolor, το χρώμα του παρασκηνίου του εγγράφου. cookie, ένα κομμάτι κειμένου με πληροφορίες για τη σελίδα. fgcolor, το χρώμα του κειμένου του εγγράφου. form, μια φόρμα του εγγράφου. forms, ένας πίνακας που περιέχει όλες τις φόρμες του εγγράφου. lastmodified, η ημερομηνία τελευταίας τροποποίησης του εγγράφου. link, ένας σύνδεσμος του εγγράφου. links, ένας πίνακας που περιέχει όλους τους συνδέσμους του εγγράφου. location, το πλήρες URL του εγγράφου. referrer, το URL του εγγράφου που περιέχει έναν σύνδεσμο στον οποίο κάναμε κλικ για να έρθουμε στο τρέχον έγγραφο. title, το κείμενο που βρίσκεται ανάμεσα στις ετικέτες <title> και </title>. vlinkcolor, το χρώμα ενός συνδέσμου που έχουμε επισκεφθεί. Οι μέθοδοι του αντικειμένου document είναι οι εξής : clear(), καθαρίζει το περιεχόμενο ενός εγγράφου. close(), κλείνει τη ροή εγγράφου. open(), ανοίγει τη ροή εγγράφου. write(), γράφει ένα κείμενο στο έγγραφο. writeln(), γράφει ένα αντικείμενο στο έγγραφο και προσθέτει μια αλλαγή γραμμής. Αντικείμενο Date Το αντικείμενο Date μάς δίνει τη δυνατότητα να δουλεύουμε με ημερομηνίες και ώρες. Για να γίνει αυτό, πρέπει να δημιουργήσουμε ένα αντίγραφο αντικειμένου με τη λέξη κλειδί new, ως εξής : Today = new Date(); Όταν δημιουργούμε ένα αντικείμενο Date, μπορούμε να πάρουμε την τρέχουσα ημερομηνία και ώρα του συστήματος, όπως κάναμε πριν, ή να ορίσουμε μια δική μας ημερομηνία και ώρα, μ' έναν από τους εξής τρόπους : Date1 = new Date("8, 30, 2001, 10:50:14") Date2 = new Date(2001, 8, 30) Date3 = new Date(2001, 8, 30, 10, 50, 14) Για το αντικείμενο Date υπάρχουν οι εξής μέθοδοι : getdate(), επιστρέφει την ημερομηνία. getday(), επιστρέφει την ημέρα της εβδομάδας. gethours(), επιστρέφει την ώρα. getminutes(), επιστρέφει τα λεπτά. getmonth(), επιστρέφει τον μήνα. getseconds(), επιστρέφει τα δευτερόλεπτα. gettime(), επιστρέφει την πλήρη ώρα. gettimezoneoffset(), επιστρέφει τη διαφορά από την ώρα Greenwich.

getyear(), επιστρέφει το έτος, parse(), επιστρέφει τα χιλιοστά του δευτερολέπτου από 1/1/1970. setdate(), ορίζει την ημερομηνία. sethours(), ορίζει την ώρα. setminutes(), ορίζει τα λεπτά. setmonth(), ορίζει τον μήνα. setseconds(), ορίζει τα δευτερόλεπτα. settime(), ορίζει την πλήρη ώρα. setyear(), ορίζει το έτος. togmtstring(), μετατρέπει την ημερομηνία σε στοιχειοσειρά ώρας Greenwich. tolocalestring(), μετατρέπει την ημερομηνία σε στοιχειοσειρά. UTC(), επιστρέφει τα χιλιοστά του δευτερολέπτου από 1/1/1970. Το Αντικείμενο Math Το αντικείμενο Math περιέχει ιδιότητες και μεθόδους που χρησιμοποιούνται για να εκτελέσουμε μαθηματικούς υπολογισμούς. Οι ιδιότητες του αντικειμένου είναι σταθερές, όπως το π, το e κ.ά., ενώ οι μέθοδοι του αντικειμένου είναι συναρτήσεις εύρεσης μεγίστου, εύρεσης ημιτόνου κ.ά. Οι ιδιότητες του αντικειμένου Math είναι οι εξής : E, η σταθερά e = 2,718. LN2, ο φυσικός λογάριθμος του 2 (περίπου 0,693). LN10, ο φυσικός λογάριθμος του 10 (περίπου 2,302). LOG2E, ο λογάριθμος του e με βάση το 2 (περίπου 1,442). LOG10E, ο δεκαδικός λογάριθμος του e (περίπου 0,434). PI, ο αριθμός π = 3,1415926. SQRT1_2, η τετραγωνική ρίζα του 1/2 (περίπου 0,707). SQRT2, η τετραγωνική ρίζα του 2 (περίπου 1,414). Οι μέθοδοι του αντικειμένου Math είναι οι εξής : abs(), επιστρέφει την απόλυτη τιμή ενός αριθμού. acos(), επιστρέφει το συνημίτονο τόξου ενός αριθμού. asin(), επιστρέφει το ημίτονο τόξου ενός αριθμού. atan(), επιστρέφει την εφαπτομένη τόξου ενός αριθμού. ceil(), επιστρέφει τον αμέσως επόμενο ακέραιο ενός αριθμού. cos(), επιστρέφει το συνημίτονο ενός αριθμού. exp(), επιστρέφει τη δύναμη ενός αριθμού με βάση το e. floor(), επιστρέφει τον αμέσως προηγούμενο ακέραιο ενός αριθμού. log(), επιστρέφει τον φυσικό λογάριθμο ενός αριθμού (με βάση το e). max(), επιστρέφει τον μεγαλύτερο από δύο αριθμούς. min(), επιστρέφει τον μικρότερο από δύο αριθμούς. pow(), επιστρέφει τη δύναμη ενός αριθμούς ως προς μια βάση. round(), στρογγυλοποιεί έναν αριθμό στον πλησιέστερο ακέραιο. sin(), επιστρέφει το ημίτονο ενός αριθμού. sqrt(), επιστρέφει την τετραγωνική ρίζα ενός αριθμού. tan(), επιστρέφει την εφαπτομένη ενός αριθμού. Για παράδειγμα :

form.result.value = Math.max(form.num1.value, form.num2.value) Η παραπάνω εντολή βρίσκει τον μεγαλύτερο από δύο αριθμούς που είναι καταχωρημένοι σε δύο πλαίσια κειμένου μιας φόρμας, με όνομα num1 και num2 αντίστοιχα, και τον καταχωρεί σ' ένα τρίτο πλαίσιο κειμένου με όνομα result.