JavaScript တွင် DOM နှင့် ကုဒ်အမှားများကို ရှာဖွေခြင်း

အောက်ပါတာဝန်များတွင် ပရိုဂရမ်မာတစ်ဦးသည် ကုဒ်ရေးသားပြီး ၎င်းတွင် အမှားများ ပြုလုပ်ထားနိုင်သည်။ ကုဒ်သည် ဖော်ပြထားသည့်အတိုင်း လုပ်ဆောင်ခြင်းရှိ/မရှိ သင်စစ်ဆေးရပါမည်။ ကုဒ်သည် မှားယွင်းစွာ အလုပ်လုပ်ပါက၊ သင်သည် အမှားများကို ပြင်ဆင်ရပါမည်။

Задание 1

ကုဒ်သည် စာပိုဒ်တစ်ခုစီ၏ နောက်ဆုံးတွင် စာသားကို ထည့်ပေးရမည်။

html<p>1</p>
<p>2</p>
<p>3</p>
javascriptlet elems = document.querySelector('p');
elems.textContent += '!';
Задание 2

စာပိုဒ်ကို ကလစ်နှိပ်လိုက်သောအခါ ၎င်း၏တန်ဖိုးသည် တစ်ခု တိုးသွားရမည်။

html<p>1</p>
<p>2</p>
<p>3</p>
javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', function() {
    this.textContent += Number(1);
  });
}
Задание 3

ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စာပိုဒ်၏စာသားသည် �ူထဲသောစာလုံး ဖြစ်သွားရမည်။

html<p>text</p>
<button>click</button>
javascriptlet button = document.querySelector('button');
let elem   = document.querySelector('p');

button.addEventListener('click', function() {
  elem.innerHTML = '<b>elem.innerHTML</b>';
});
Задание 4

ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စာပိုဒ်များမှ နံပါတ်များ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<p>1</p>
<p>2</p>
<p>3</p>

<button>click</button>
javascriptlet button = document.querySelector('button');
let elems  = document.querySelector('p');

button.addEventListener('click', function() {
  let sum = 0;
  
  for (let elem of elems) {
    sum += Number(elems.textContent);
  }
  
  console.log(sum);
});
Задание 5

စာပိုဒ်ကို ကလစ်နှိပ်လိုက်သောအခါ ၎င်း၏နောက်ဆုံးတွင် သတ်မှတ်ထားသော စာသားကို ထည့်ပေးရမည်။

html<p>1</p>
<p>2</p>
<p>3</p>
javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', () => {
    this.textContent += '!';
  });
}
Задание 6

ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စာပိုဒ်တစ်ခုစီ၏ စာသားသည် ထူထဲသောစာလုံး ဖြစ်သွားရမည်။

html<p>text1</p>
<p>text2</p>
<p>text3</p>
<button>click</button>
javascriptlet button = document.querySelector('button');
let elems  = document.querySelectorAll('p');

button.addEventListener('click', function() {
  for (let elem of elems) {
    elem.innerHTML = '<b>+elem.innerHTML+</b>';
  }
});
Задание 7

ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စာပိုဒ်များမှ နံပါတ်များ၏ ပေါင်းလဒ်ကို console တွင် ပြသရမည်။

html<p>1</p>
<p>2</p>
<p>3</p>

<button>click</button>
javascriptlet button = document.querySelector('button');
let elems  = document.querySelectorAll('p');
let sum = 0;

for (let elem of elems) {
  sum = elem.textContent + 1;
  
  button.addEventListener('click', function() {
    console.log(sum);
  });
}
Задание 8

input များတွင် နံပါတ်များ ထည့်သွင်းထားသည်။ ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ console တွင် input များမှ နံပါတ်များ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<input>
<input>
<input>

<button>click</button>
javascriptlet button = document.querySelector('button');
let elems  = document.querySelectorAll('input');
let sum = 0;

for (let elem of elems) {
  sum += elem.value;
}

button.addEventListener('click', function() {
  console.log(sum);
});
Задание 9

ပထမ input နှစ်ခုတွင် နံပါတ်များ ထည့်သွင်းထားသည်။ ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ တတိယ input တွင် ထိုနံပါတ်များ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<input id="inp1">
<input id="inp2">
<input id="inp3">

<button id="btn">click</button>
javascriptlet btn  = document.querySelector('#btn');
let inp1 = document.querySelector('#inp1');
let inp2 = document.querySelector('#inp2');
let inp3 = document.querySelector('#inp3');

btn.addEventListener('click', function() {
  inp3.textContent = inp1.textContent + inp2.textContent;
});
Задание 10

ပထမ input နှစ်ခုတွင် နံပါတ်များ ထည့်သွင်းထားသည်။ ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စာပိုဒ်တွင် ထိုနံပါတ်များ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<input id="inp1">
<input id="inp2">
<p id="res"></p>

<button id="btn">click</button>
javascriptlet btn  = document.querySelector('btn');
let res  = document.querySelector('res');
let inp1 = document.querySelector('inp1');
let inp2 = document.querySelector('inp2');

button.addEventListener('click', function() {
  res.value = inp1.value + inp2.value;
});
Задание 11

ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စစ်ဆေးရမည်။ တစ်ခုချင်းစီသော input ထဲရှိ စာသားသည် ၎င်း၏ data attribute ရှိ စာသားနှင့် ကိုက်ညီမှု ရှိ/မရှိ။

html<input data-text="text1">
<input data-text="text2">
<input data-text="text3">

<button id="btn">click</button>
javascriptlet inputs = document.querySelectorAll('input')
let button = document.querySelector('#button')

button.addEventListener('click',function() {
  for (let input of inputs) {
    if (input.value === input.dataset) {
      input.classList.add('right')
    } else {
      input.classList.add('wrong')
    }
  }
});
Задание 12

ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ စစ်ဆေးရမည်။ တစ်ခုချင်းစီသော input ထဲရှိ စာသားသည် သက်ဆိုင်ရာ array element ၏ စာသားနှင့် ကိုက်ညီမှု ရှိ/မရှိ။

html<input>
<input>
<input>

<button id="btn">click</button>
javascriptlet inputs = document.querySelectorAll('input')
let button = document.querySelector('#button')

let texts = [
  'text1',
  'text2',
  'text3',
];

button.addEventListener('click',function() {
  for (let input of inputs) {
    for (let text of texts) {
      if (input.value === text) {
        input.classList.add('right')
      } else {
        input.classList.add('wrong')
      }
    }
  }
});
Задание 13

input များတွင် နံပါတ်များ ထည့်သွင်းထားသည်။ ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ console တွင် ထည့်သွင်းထားသော နံပါတ်များ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<input>
<input>
<input>

<button id="btn">click</button>
javascriptlet inputs = document.querySelectorAll('inputs');
let btn = document.querySelector('#btm');
let sum = 0;

btn.addEventListener('click', function() {
  for (let input of inputs) {
    sum += Number(input);
  }
  
  console.log(sum);
});
Задание 14

ပထမ input နှစ်ခုတွင် နံပါတ်များ ထည့်သွင်းထားသည်။ ခလုတ်ကို ကလစ်နှိပ်လိုက်သောအခါ တတိယ input တွင် ထိုနံပါတ်များ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<input id="inp1">
<input id="inp2">
<input id="inp3">

<button id="btn">click</button>
javascriptlet btn  = document.querySelector('#btn');
let inp1 = document.querySelector('#inp1');
let inp2 = document.querySelector('#inp2');
let inp3 = document.querySelector('#inp3');

let sum  = inp1.value + inp2.value;

btn.addEventListener('click', function() {
  inp3.value = sum;
});
Задание 15

input တွင် နံပါတ်တစ်ခု ထည့်သွင်းထားသည်။ focus ပြုတ်သွားသောအခါ console တွင် ထိုနံပါတ်၏ ဂဏန်းများ၏ ပေါင်းလဒ်ကို ပြသရမည်။

html<input id="inp">
javascriptlet inp = document.querySelector('#inp').value;

inp.addEventListener('blur', function() {
  let digits = +inp.split('');
  let sum = 0;
  
  for (let digit of digits) {
    sum += digit;
  }
  
  console.log(sum);
});