ცვლადების და ფუნქციების ექსპორტი მოდულებიდან ჩაკეტვების მეშვეობით JavaScript-ში
ზოგჯერ საჭიროა, რომ მოდულის ზოგიერთი ცვლადი და ფუნქცია გარედან იყოს ხელმისაწვდომი. მოდით ვნახოთ, როგორ კეთდება ეს. მოდით, გვქონდეს შემდეგი მოდული:
;(function() {
let str = 'მოდულის ცვლადი';
function func() {
alert('მოდულის ფუნქცია');
}
})();
მოდით ექსპორტოთ ჩვენი ფუნქცია func.
ამისთვის ჩავწეროთ ის ჩაშენებული ობიექტის
window თვისებაში:
;(function() {
let str = 'მოდულის ცვლადი';
function func() {
alert('მოდულის ფუნქცია');
}
window.func = func;
})();
ახლა ჩვენ შეგვიძლია გამოვიძახოთ ჩვენი ფუნქცია მოდულის გარეთ:
;(function() {
let str = 'მოდულის ცვლადი';
function func() {
alert('მოდულის ფუნქცია');
}
window.func = func;
})();
window.func(); // გამოიტანს 'მოდულის ფუნქცია'
ამ შემთხვევაში არ არის აუცილებელი ფუნქციის გამოძახება
როგორც ობიექტის window თვისების:
;(function() {
let str = 'მოდულის ცვლადი';
function func() {
alert('მოდულის ფუნქცია');
}
window.func = func;
})();
func(); // გამოიტანს 'მოდულის ფუნქცია'
მოცემულია შემდეგი მოდული:
;(function() {
let str1 = 'მოდულის ცვლადი';
let str2 = 'მოდულის ცვლადი';
let str3 = 'მოდულის ცვლადი';
function func1() {
alert('მოდულის ფუნქცია');
}
function func2() {
alert('მოდულის ფუნქცია');
}
function func3() {
alert('მოდულის ფუნქცია');
}
})();
გააკეთეთ ექსპორტი ერთ-ერთი ცვლადის და ნებისმიერი ორი ფუნქციის გარეთ.