Εφαρμογή των Συναρτήσεων Βέλους στην JavaScript

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

javascriptfunction filter(arr, callback) {
  let res = [];

  for (let elem of arr) {
    if ( callback(elem) === true ) {
      res.push(elem);
    }
  }
  
  return res;
}

Ας καλέσουμε αυτή τη συνάρτηση, περνώντας της ένα callback:

javascriptlet result = filter([1, 2, 3, 4, 5], function(elem) {
  if (elem % 2 === 0) {
    return true;
  } else {
    return false;
  }
});

Ας απλοποιήσουμε τώρα τη συνάρτησή μας. Αρχικά, ας απαλλαγούμε από την κατασκευή if και ας γράψουμε τη συνθήκη απλά μέσω του τελεστή ===:

javascriptlet result = filter([1, 2, 3, 4, 5], function(elem) {
  return elem % 2 == 0;
});

Ας αντικαταστήσουμε τώρα τη συνηθισμένη συνάρτηση με μια συνάρτηση βέλους:

javascriptlet result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);
Задание 1

Δίνεται η ακόλουθη συνάρτηση με callback:

javascriptlet result = filter([1, 2, 3, 4, 5], function(elem) {
  if (elem > 0) {
    return true;
  } else {
    return false;
  }
});

Απλοποιήστε το callback χρησιμοποιώντας συνάρτηση βέλους.