Uporaba zbirk Map
Recimo, da imamo odstavke:
<p>aaa</p>
<p>bbb</p>
<p>ccc</p>
<p>ddd</p>
<p>eee</p>
Naredimo tako, da se ob kliku na vsak
odstvek na konec zapiše njegova zaporedna
številka na seznamu odstavkov. Rešimo nalogo s pomočjo
Map.
Pa začnimo. Najprej pridobimo naše odstavke v spremenljivko:
let elems = document.querySelectorAll('p');
Ustvarimo novo zbirko Map:
let map = new Map;
Zapolnimo našo zbirko tako, da so ključi naši odstavki, njihove vrednosti pa zaporedne številke:
let i = 1;
for (let elem of elems) {
map.set(elem, i++);
}
Pojdimo skozi odstavke z zanko in nanje dodajmo obravnavalnik klikov:
for (let elem of elems) {
elem.addEventListener('click', function() {
});
}
Zdaj pa ob kliku dodajmo zaporedno številko na konec besedila odstavka. Pri tem bomo to številko pridobili iz naše zbirke:
for (let elem of elems) {
elem.addEventListener('click', function() {
this.textContent += map.get(this);
});
}
Podani so vnosna polja. Pojdite skozi ta vnosna polja z zanko
in ustvarite zbirko Map, kjer bodo ključi
vnosna polja, vrednost pa njihova
zaporedna številka na strani. Naredite tako,
da se ob kliku na katero koli vnosno polje v value
zapiše njegova zaporedna številka.
Podani so vnosna polja. V vsako vnosno polje je mogoče vnesti
število. Ob pritisku na Enter naj vnosno polje
zapomni vneseno število. Naredite tako,
da se ob izgubi fokusa v vnosnem polju v konzolo
izpiže tabela vseh prej vnešenih v vnosno polje
števil.