Πλαίσιο μέσω παραμέτρου στο JavaScript

Υπάρχει και μια άλλη λύση στο πρόβλημα. Ας κάνουμε έτσι, ώστε η συνάρτηση child να δέχεται μια παράμετρο:

javascriptfunction child(param) {
  // εδώ θα είναι ο κώδικας
}

Και κατά την κλήση αυτής της συνάρτησης θα μεταβιβάζουμε σε αυτήν το this:

javascriptfunction parent() {
  child(this); // μεταβιβάζουμε ως παράμετρο το this
  
  function child(param) {
    // στη μεταβλητή param βρίσκεται το μεταβιβασμένο περιεχόμενο του this
  }
}

Εφόσον η κλήση της child πραγματοποιείται στη γονική συνάρτηση, τότε και το μεταβιβαζόμενο this δείχνει σε αυτό που χρειάζεται. Στη συνέχεια, αυτό το this περνάει στην παράμετρο param και με αυτήν τη μορφή θα είναι προσβάσιμο μέσα στη συνάρτηση.

Ακολουθεί ο τελικός κώδικας:

javascriptlet elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);

function parent() {
  child(this); // μεταβιβάζουμε ως παράμετρο το this
  
  function child(param) {
    console.log(param.value); // εμφανίζουμε το value του input
  }
}
Задание 1

Πάρτε τον κώδικα από το προηγούμενο πρόβλημα και διορθώστε το πρόβλημα του κώδικα χρησιμοποιώντας τον δεύτερο τρόπο που μελετήθηκε.