Die Ontkoppeling van Anonieme Funksies in JavaScript
Gestel daar is nou 'n anonieme funksie aan ons paragrawe gekoppel:
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function() {
console.log(this.textContent);
});
}
Gestel ons wil hierdie funksie van die paragraaf ontkoppel na 'n klik op daardie paragraaf. Ons staar egter 'n probleem in die gesig: die funksie het geen naam nie, wat beteken ons kan nie daarna verwys om dit te ontkoppel nie.
Om die probleem op te los, moet ons die funksie 'n naam gee, deur dit 'n benoemde funksionele uitdrukking te maak. Kom ons doen dit:
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function func() { // het funksie 'n naam gegee
console.log(this.textContent);
});
}
Nou kan hierdie funksie binne homself ontkoppel word:
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function func() {
console.log(this.textContent);
this.removeEventListener('click', func); // ontkoppel die funksie
});
}
Daar is 'n lys ul, waarin elke punt 'n
nommer bevat. Maak dit so dat
met 'n klik op enige li sy nommer verhoog
met een.
Wysig die vorige taak sodat
elke li sy waarde slegs met die eerste druk
daarop verhoog.
Wysig die vorige taak sodat
elke li sy waarde slegs verhoog as sy waarde
kleiner as 10 is.