JavaScript တွင် အမည်မဲ့ function များကို ဖြုတ်ခြင်း
ယခု ကျွန်ုပ်တို့၏ စာပိုဒ်များနှင့် အမည်မဲ့ function တစ်ခု ချိတ်ဆက်ထားသည်ဟု ယူဆပါစို့။
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function() {
console.log(this.textContent);
});
}
စာပိုဒ်တစ်ခုကို ကလစ်နှိပ်ပြီးနောက် ၎င်းစာပိုဒ်မှ ဤ function ကို ဖြုတ်ချင်သည်ဆိုပါစို့။ သို့သော် ကျွန်ုပ်တို့ ရင်ဆိုင်ရမည့် ပြဿနာတစ်ခု ရှိသည်။ function တွင် အမည်မရှိပါ၊ ဆိုလိုသည်မှာ ၎င်းကိုဖြုတ်ရန် ထိုအမည်ဖြင့် ရည်ညွှန်းခေါ်ဆိုနိုင်မည် မဟုတ်ပါ။
ဤပြဿနာကို ဖြေရှင်းရန် အမည်ပါ function expression တစ်ခုအဖြစ် ပြောင်းလဲကာ function ကို အမည်ပေးရမည်။ ထိုသို့ပြုလုပ်ကြပါစို့။
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function func() { // function ကို အမည်ပေးထားသည်
console.log(this.textContent);
});
}
ယခု ဤ function ကို ၎င်း၏ကိုယ်တွင်းမှပင် ဖြုတ်နိုင်ပါပြီ။
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function func() {
console.log(this.textContent);
this.removeEventListener('click', func); // function ကို ဖြုတ်သည်
});
}
ul စာရင်းတစ်ခု ရှိပါသည်၊ ၎င်း၏အမှတ်တိုင်းတွင်
နံပါတ်တစ်ခု ရေးထားပါသည်။ မည်သည့်
li ကိုမဆို ကလစ်နှိပ်လိုက်သည်နှင့် ၎င်း၏နံပါတ်သည် တစ်တိုးသွားစေရန်
လုပ်ပါ။
ယခင်ပုစ္ဆာကို ပြင်ဆင်ထားသည်မှာ၊
li တစ်ခုစီသည် ၎င်း၏တန်ဖိုးကို ၎င်းအား
ပထမဆုံးအကြိမ် နှိပ်လိုက်သည့်အခါမှသာ တိုးစေရန်
ဖြစ်သည်။
ယခင်ပုစ္ဆာကို ထပ်မံပြင်ဆင်ထားသည်မှာ၊
li တစ်ခုစီသည် ၎င်း၏တန်ဖိုးကို ၎င်း၏တန်ဖိုး
10 ထက်နည်းမှသာ တိုးစေရန်
ဖြစ်သည်။