Εξαγωγή Μεταβλητών και Συναρτήσεων σε Modules μέσω Κλεισιών σε JavaScript
Μερικές φορές χρειάζεται να κάνουμε ορισμένες μεταβλητές και συναρτήσεις του module προσβάσιμες από έξω. Ας δούμε πώς γίνεται αυτό. Ας υποθέσουμε ότι έχουμε το ακόλουθο module:
;(function() {
let str = 'μεταβλητή module';
function func() {
alert('συνάρτηση module');
}
})();
Ας εξάγουμε τη συνάρτησή μας func.
Για να το κάνουμε αυτό, θα την καταγράψουμε ως ιδιότητα του ενσωματωμένου
στο πρόγραμμα περιήγησης αντικειμένου window:
;(function() {
let str = 'μεταβλητή module';
function func() {
alert('συνάρτηση module');
}
window.func = func;
})();
Τώρα μπορούμε να καλέσουμε τη συνάρτησή μας από έξω του module:
;(function() {
let str = 'μεταβλητή module';
function func() {
alert('συνάρτηση module');
}
window.func = func;
})();
window.func(); // θα εμφανίσει 'συνάρτηση module'
Σε αυτή την περίπτωση, δεν είναι απαραίτητο να καλέσετε τη συνάρτηση
ως ιδιότητα του αντικειμένου window:
;(function() {
let str = 'μεταβλητή module';
function func() {
alert('συνάρτηση module');
}
window.func = func;
})();
func(); // θα εμφανίσει 'συνάρτηση module'
Δίνεται το ακόλουθο module:
;(function() {
let str1 = 'μεταβλητή module';
let str2 = 'μεταβλητή module';
let str3 = 'μεταβλητή module';
function func1() {
alert('συνάρτηση module');
}
function func2() {
alert('συνάρτηση module');
}
function func3() {
alert('συνάρτηση module');
}
})();
Εξάγετε προς τα έξω μία από τις μεταβλητές και οποιεσδήποτε δύο συναρτήσεις.