JavaScript πίνακες επαναληπτικής διαδρομής

Τα μεθόδους επαναληπτικής διαδρομής δρουν σε κάθε στοιχείο του πίνακα.

Array.forEach()

forEach() Η μέθοδος καλεί τη συνάρτηση μια φορά για κάθε στοιχείο του πίνακα (callback συνάρτηση).

Παράδειγμα

var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);
function myFunction(value, index, array) {
  txt = txt + value + "<br>"; 
}

Δοκιμάστε το προσωπικά

Σημείωση:Η συνάρτηση αποδέχεται 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Στο παραπάνω παράδειγμα χρησιμοποιήθηκε μόνο η παράμετρος value. Το παράδειγμα μπορεί να γραφτεί ξανά ως:

Παράδειγμα

var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);
function myFunction(value) {
  txt = txt + value + "<br>"; 
}

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.forEach()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.map()

map() Η μέθοδος δημιουργεί έναν νέο πίνακα εκτελώντας τη συνάρτηση σε κάθε στοιχείο του πίνακα.

map() Η μέθοδος δεν εκτελεί τη συνάρτηση σε στοιχεία του πίνακα χωρίς τιμή.

map() Η μέθοδος δεν αλλάζει τον αρχικό πίνακα.

Αυτό το παράδειγμα πολλαπλασιάζει κάθε τιμή του πίνακα με 2:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);
function myFunction(value, index, array) {
  return value * 2;
}

Δοκιμάστε το προσωπικά

Παρακαλώ προσεκτέτε ότι η συνάρτηση έχει 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Όταν η callback συνάρτηση χρησιμοποιεί μόνο την παράμετρο value, τα παραμέτρους index και array μπορούν να παραλειφθούν:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);
function myFunction(value) {
  return value * 2;
}

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.map()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.filter()

filter() Η μέθοδος δημιουργεί έναν νέο πίνακα που περιέχει τα στοιχεία που περνούν τον έλεγχο.

Αυτό το παράδειγμα δημιουργεί έναν νέο πίνακα από στοιχεία με τιμές μεγαλύτερες από 18:

Παράδειγμα

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Παρακαλώ σημειώστε ότι αυτή η συνάρτηση λαμβάνει 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Στο παραπάνω παράδειγμα, η callback συνάρτηση δεν χρησιμοποιεί τα παραμέτρους index και array, οπότε μπορεί να παραλειφθούν:

Παράδειγμα

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);
function myFunction(value) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.filter()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.reduce()

reduce() Η μέθοδος εκτελεί τη συνάρτηση σε κάθε στοιχείο του πίνακα για να δημιουργήσει (μειώνοντας) έναν μοναδικό αριθμό.

reduce() Η μέθοδος λειτουργεί από αριστερά προς δεξιά στον πίνακα. Δείτε επίσης reduceRight().

reduce() Η μέθοδος δεν μειώνει τον αρχικό πίνακα.

Αυτό το παράδειγμα καθορίζει τη συνολική προσθήκη όλων των αριθμών του πίνακα:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);
function myFunction(total, value, index, array) {
  return total + value;
}

Δοκιμάστε το προσωπικά

Παρακαλώ προσεκτέτε ότι αυτή η συνάρτηση αποδέχεται 4 παραμέτρους:

  • Σύνολο (πρώτη τιμή/προηγούμενη επιστροφή)
  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Στο προηγούμενο παράδειγμα δεν χρησιμοποιήθηκαν οι παραμέτρους index και array. Μπορεί να το επαναγράψουμε ως:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);
function myFunction(total, value) {
  return total + value;
}

Δοκιμάστε το προσωπικά

reduce() Η μέθοδος μπορεί να αποδεχτεί μια αρχική τιμή:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction, 100);
function myFunction(total, value) {
  return total + value;
}

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.reduce()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.reduceRight()

reduceRight() Η μέθοδος εκτελεί τη συνάρτηση σε κάθε στοιχείο του πίνακα για να δημιουργήσει (μειώνοντας) έναν μοναδικό αριθμό.

reduceRight() Η μέθοδος λειτουργεί από δεξιά προς αριστερά στον πίνακα. Δείτε επίσης reduce().

reduceRight() Η μέθοδος δεν μειώνει τον αρχικό πίνακα.

Αυτό το παράδειγμα καθορίζει τη συνολική προσθήκη όλων των αριθμών του πίνακα:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduceRight(myFunction);
function myFunction(total, value, index, array) {
  return total + value;
}

Δοκιμάστε το προσωπικά

Παρακαλώ προσεκτέτε ότι αυτή η συνάρτηση αποδέχεται 4 παραμέτρους:

  • Σύνολο (πρώτη τιμή/προηγούμενη επιστροφή)
  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Στο προηγούμενο παράδειγμα δεν χρησιμοποιήθηκαν οι παραμέτρους index και array. Μπορεί να το επαναγράψουμε ως:

Παράδειγμα

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduceRight(myFunction);
function myFunction(total, value) {
  return total + value;
}

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.reduceRight()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.every()

every() Η μέθοδος ελέγχει αν όλες οι τιμές της λίστας περνούν τον έλεγχο.

Αυτός ο παράδειγμα ελέγχει αν όλες οι τιμές της λίστας είναι μεγαλύτερες από 18:

Παράδειγμα

var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Παρακαλώ σημειώστε ότι αυτή η συνάρτηση λαμβάνει 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Αν η callback συνάρτηση χρησιμοποιεί μόνο τον πρώτο παράμετρο (τιμή), μπορεί να παραλειφθεί άλλες παραμέτρους:

Παράδειγμα

var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);
function myFunction(value) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.every()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.some()

some() Η μέθοδος ελέγχει αν κάποια τιμές της λίστας περνούν τον έλεγχο.

Αυτός ο παράδειγμα ελέγχει αν κάποια τιμές της λίστας είναι μεγαλύτερες από 18:

Παράδειγμα

var numbers = [45, 4, 9, 16, 25];
var someOver18 = numbers.some(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Παρακαλώ σημειώστε ότι αυτή η συνάρτηση λαμβάνει 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.some()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Array.indexOf()

indexOf() Η μέθοδος αναζητά στοιχεία μέσα στην λίστα και επιστρέφει τη θέση τους.

Σημείωση:Η θέση του πρώτου στοιχείου είναι 0, η θέση του δεύτερου στοιχείου είναι 1, και έτσι εξής.

Παράδειγμα

Αναζήτηση στοιχείου "Apple" μέσα στην λίστα:

var fruits = ["Apple", "Orange", "Apple", "Mango"];
var a = fruits.indexOf("Apple");

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.indexOf()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Γλώσσα πρόγραμμα

array.indexOf(στοιχείο, Ξεκίνημα)
στοιχείο Απαιτείται. Το στοιχείο που πρέπει να αναζητηθεί.
Ξεκίνημα Οptional. Πού ξεκινά η αναζήτηση. Τα αρνητικά τιμές ξεκινούν από το τέλος και αναζητούν μέχρι το τέλος.

Αν δεν βρεθεί το στοιχείο:Array.indexOf() Επιστρέφει -1.

Αν το στοιχείο εμφανίζεται πολλές φορές, επιστρέφει τη θέση της πρώτης εμφάνισης.

Array.lastIndexOf()

Array.lastIndexOf() Με Array.indexOf() Όμοια, αλλά ξεκινά από το τέλος της λίστας και αναζητά.

Παράδειγμα

Αναζήτηση στοιχείου "Apple" μέσα στην λίστα:

var fruits = ["Apple", "Orange", "Apple", "Mango"];
var a = fruits.lastIndexOf("Apple");

Δοκιμάστε το προσωπικά

Απαιτείται υποστήριξη από όλους τους περιηγητές Array.lastIndexOf()Μαζί με το Internet Explorer 8 ή παλιότερη έκδοση:

Ναι 9.0 Ναι Ναι Ναι

Γλώσσα πρόγραμμα

array.lastIndexOf(στοιχείο, Ξεκίνημα)
στοιχείο Απαιτείται. Το στοιχείο που πρέπει να αναζητηθεί.
Ξεκίνημα Επιλογή. Από πού ξεκινά η αναζήτηση. Οι αρνητικές τιμές ξεκινούν από το τέλος και αναζητούνται προς την αρχή.

Array.find()

find() Η μέθοδος επιστρέφει την τιμή του πρώτου στοιχείου που περνάει τον δοκιμαστικό συνάρτηση.

Αυτό το παράδειγμα αναζητά (επιστρέφει) την τιμή του πρώτου στοιχείου που είναι μεγαλύτερο από 18:

Παράδειγμα

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Παρακαλώ σημειώστε ότι αυτή η συνάρτηση λαμβάνει 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Παλιές περιηγητές δεν υποστηρίζουν Array.find()Ακολουθεί μια λίστα με τις πρώτες εκδόσεις των προγραμματιστών που υποστηρίζουν αυτή τη μέθοδο:

45 12 25 8 32

Array.findIndex()

findIndex() Η μέθοδος επιστρέφει την θέση του πρώτου στοιχείου που περνάει τον δοκιμαστικό συνάρτηση.

Αυτό το παράδειγμα αναζητά την πρώτη θέση του στοιχείου που είναι μεγαλύτερο από 18:

Παράδειγμα

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Δοκιμάστε το προσωπικά

Παρακαλώ σημειώστε ότι αυτή η συνάρτηση λαμβάνει 3 παραμέτρους:

  • Τιμή στοιχείου
  • Ταυτότητα στοιχείου
  • Αυτό το σύνολο

Παλιές περιηγητές δεν υποστηρίζουν Array.findIndex()Ακολουθεί μια λίστα με τις πρώτες εκδόσεις των προγραμματιστών που υποστηρίζουν αυτή τη μέθοδο:

45 12 25 8 32