⊗jsPmDmAHU 363 of 505 menu

Одвајање анонимних функција у JavaScript-у

Претпоставимо сада да је нашим параграфима везана анонимна функција:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', function() { console.log(this.textContent); }); }

Претпоставимо да желимо да одвежемо ову функцију од параграфа након клика на тај параграф. Међутим, чека нас проблем: функција нема име, што значи да се нећемо моћи обратити њој по том имену, да бисмо је одвезали.

За решење проблема потребно је дати име функцији, претварајући је у именовани функцијски израз. Хајде да то урадимо:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', function func() { // дали име функцији console.log(this.textContent); }); }

Сада се ова функција може одвезати унутар саме себе:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', function func() { console.log(this.textContent); this.removeEventListener('click', func); // одвезујемо функцију }); }

Дата је листа ul, у чијем је сваком елементу записана број. Направите да се при клику на било коју li њен број увећава за један.

Модификујте претходни задатак тако, да свака li увећава своју вредност само при првом притиску на њу.

Модификујте претходни задатак тако, да свака li увећава своју вредност само ако је њена вредност мања од 10.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј