Përdorimi i Koleksioneve Map
Le të themi se kemi këto paragrafë:
<p>aaa</p>
<p>bbb</p>
<p>ccc</p>
<p>ddd</p>
<p>eee</p>
Le t'i bëjmë të tillë që me klikim në çdo
paragraf, në fund të tij të shkruhet numri i tij
radhë në listën e paragrafëve. Le ta zgjidhim këtë
problem duke përdorur Map.
Le të fillojmë. Së pari, le t'i marrim paragrafët tanë në një variabël:
let elems = document.querySelectorAll('p');
Le të krijojmë një koleksion të ri Map:
let map = new Map;
Le ta plotësojmë koleksionin tonë në mënyrë që çelësat të jenë paragrafët tanë, dhe vlerat e tyre të jenë numrat radhë:
let i = 1;
for (let elem of elems) {
map.set(elem, i++);
}
Le t'i përsërisim paragrafët me një cikël dhe t'u lidhim atyre një përgjigjës ndaj klikimit:
for (let elem of elems) {
elem.addEventListener('click', function() {
});
}
Tani, me klikim, le të shtojmë numrin radhë në fund të tekstit të paragrafit. Në të njëjtën kohë, le ta marrim këtë numër nga koleksioni ynë:
for (let elem of elems) {
elem.addEventListener('click', function() {
this.textContent += map.get(this);
});
}
Janë dhënë inputet. Përsëritni këto inpute me cikël
dhe krijojeni një koleksion Map, ku çelësat
të jenë inputet, dhe vlera - numri i tyre radhë
në faqe. Bëni të tillë që me klikim në çdo input,
në value të tij të shkruhet numri i tij radhë.
Janë dhënë inputet. Në çdo input mund të vendoset
një numër. Le të themi se me shtypjen e Enter inputi
mbaj mend numrin e vendosur. Bëni të tillë që me humbjen
e fokusit në input, në konsol të printohet një array
i të gjithë numrave të vendosur më parë në atë input.