Βρόχοι (Loops)
Με τους βρόχους μπορείτε να εκτελέσετε επαναληπτικά ένα μπλοκ κώδικα.
Στη Javascipt μπορείτε να χρησιμοποιήσετε διαφορετικούς τύπους βρόχου ανάλογα με την περίπτωση.
Ο βρόχος for
Η σύνταξη του βρόχου είναι:
for (αρχική τιμή αριθμητή; συνθήκη; βήμα αρίθμησης) { ... }
Ο βρόχος for παίρνει τρεις παραμέτρους οι οποίες χωρίζονται με το ελληνικό ερωτηματικό:
αρχική τιμή αριθμητή: Είναι η τιμή από την οποία αρχίζει να μετράει ο μετρητής π.χ: i=1
συνθήκη: Σε κάθε βρόχο γίνεται έλεγχος της συνθήκης. Αν η συνθήκη ισχύει ο επόμενος βρόχος εκτελείται διαφορετικά τελειώνει η επανάληψη.
βήμα αρίθμησης: Είναι το βήμα με το οποίο μετράει ο μετρητής π.χ.: i=i+5 ή i++
Στο παρακάτω παράδειγμα εκτελείται το μπλοκ κώδικα συνολικά 5 φορές αφού ο μετρητής αρχίζει από το 0 (i=0) τελειώνει στο 4 (i<5) και 'βηματίζει' κατά 1 (i++).
var i; for (i=0; i<5; i++) { document.write("Ο αριθμός είναι: " + i); document.write("<br />"); }
Ο αριθμός είναι: 0 Ο αριθμός είναι: 1 Ο αριθμός είναι: 2 Ο αριθμός είναι: 3 Ο αριθμός είναι: 4
Ο βρόχος while
Η σύνταξη του βρόχου είναι:
while (συνθήκη) { ... }
Ο βρόχος while εκτελείται συνέχεια όσο η συνθήκη είναι αληθής
Στο παρακάτω παράδειγμα εκτελείται το μπλοκ κώδικα συνολικά 5 φορές αφού σε κάθε κύκλο (βρόχο) γίνεται έλεγχος της συνθήκης (i<5) η οποία παύει να ισχύει όταν i=5.
var i=0; while (i<5) { document.write("Ο αριθμός είναι: " + i); document.write("<br />"); i=i+1; }
Ο αριθμός είναι: 0 Ο αριθμός είναι: 1 Ο αριθμός είναι: 2 Ο αριθμός είναι: 3 Ο αριθμός είναι: 4
Ο βρόχος do...while
Η σύνταξη του βρόχου είναι:
do { ... } while (συνθήκη);
Ο βρόχος do...while εκτελείται όπως και ο βρόχος while με τη διαφορά ότι ο έλεγχος της συνθήκης γίνεται στο τέλος της εκτέλεσης του μπλοκ και όχι στην αρχή.
var i=0; do { document.write("Ο αριθμός είναι: " + i); document.write("<br />"); i=i+1; } while (i<5);
Ο αριθμός είναι: 0 Ο αριθμός είναι: 1 Ο αριθμός είναι: 2 Ο αριθμός είναι: 3 Ο αριθμός είναι: 4
Ο βρόχος for...in
Ο βρόχος αυτός χρησιμοποιείται για την διάσχιση ενός πίνακα (array) ή ενός αντικειμένου (object).
Για τους πίνακες και τα αντικείμενα υπάρχουν ξεχωριστές ενότητες.
Η σύνταξη του βρόχου είναι:
for (x in color) { ... }
Όπου x είναι μια τυχαία μεταβλητή και color είναι ένας τυχαίος πίνακας ή ένα αντικείμενο (object).
var color = ["red", "green", "blue"]; for (x in color) { document.write(color[x]); document.write("<br />"); }
red green blue
Ο βρόχος forEach()
Η forEach είναι μια μέθοδος του αντικειμένου Array και χρησιμοποιείται για την διάσχιση ενός πίνακα (array).
Η σύνταξη του βρόχου είναι:
Array.forEach(callback);
Όπου callback μια συνάρτηση που καλείται από την forEach
var fruits = ["banana", "apple", "orange", "cherry"]; fruits.forEach(callback); function callback(item, index) { console.log(index + ":" + item); }
0:banana 1:apple 2:orange 3:cherry
Συνήθως η συνάρτηση callback καταχωρείται ως ανώνυμη ή arrow function.
const fruits = ["banana", "apple", "orange", "cherry"]; fruits.forEach((item, index) => { console.log(index + ":" + item); });
0:banana 1:apple 2:orange 3:cherry
Ο βρόχος for...of
Χρησιμοποιείται κυρίως για την διάσχιση επαναλήψιμων αντικειμένων (iterable objects) όπως Arrays, Strings, Maps, NodeLists, και άλλα.
const cars = ["BMW", "Volvo", "Fiat"];
for (let x of cars) {
console.log(x);
}
let language = "JavaScript";
for (let x of language) {
console.log(x);
}