Map kolleksiyalarini qo‘llash
Bizda paragraflar bor deb faraz qilaylik:
<p>aaa</p>
<p>bbb</p>
<p>ccc</p>
<p>ddd</p>
<p>eee</p>
Keling, har bir paragraf ustiga bosilganda
uning oxiriga paragraflar ro‘yxatidagi tartib
raqami yozilishi uchun qilaylik. Vazifani
Map orqali echamiz.
Keling, boshlaylik. Avvalo, paragraflarimizni o‘zgaruvchiga olaylik:
let elems = document.querySelectorAll('p');
Yangi Map kolleksiyasini yaratamiz:
let map = new Map;
Kolleksiyamizni shunday to‘ldiramizki, kalitlar paragraflarimiz, ularning qiymatlari esa tartib raqamlari bo‘lsin:
let i = 1;
for (let elem of elems) {
map.set(elem, i++);
}
Paragraflarni tsikl bilan aylantiramiz va ularga klik hodisasi qayta ishlovchisini bog‘laymiz:
for (let elem of elems) {
elem.addEventListener('click', function() {
});
}
Keling, endi klik paytida tartib raqamini paragraf matnining oxiriga qo‘shaylik. Bunda ushbu raqamni bizning kolleksiyamizdan olamiz:
for (let elem of elems) {
elem.addEventListener('click', function() {
this.textContent += map.get(this);
});
}
Input maydonlari berilgan. Ushbu inputlarni
tsikl bilan aylantiring va Map kolleksiyasini
yarating, bunda kalitlar inputlar, qiymati esa
ularning sahifadagi tartib raqami bo‘lsin. Har
qanday input ustiga bosilganda uning value
iga uning tartib raqami yozilishi uchun qiling.
Input maydonlari berilgan. Har bir inputga
son kiritish mumkin. Enter tugmasi bosilganda
input kiritilgan sonni eslab qolsin. Input
fokusni yo‘qotganida, konsolga inputga ilgari
kiritilgan barcha sonlar massivi chiqarilishi
uchun qiling.