Asked
Active
Viewed 38 times
class Calc {
constructor() {
this.Plus = document.querySelector('.plus');
this.Minus = document.querySelector('.minus');
this.NumberOne = document.getElementById('numone');
this.NumberTwo = document.getElementById('numtwo');
}
start() {
this.Plus.addEventListener('click', function () {
NumOne = this.NumberOne.value;
NumTwo = this.NumberTwo.value;
alert(NumOne + NumTwo)
});
}
}
let calc = new Calc;
calc.start();
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div>
<button class="plus">+</button>
<button class="minus">-</button>
</div>
<input id="numtwo" type="number" value="0" />
<input id="numtwo" type="number" value="0"/>
<script src="main.js"></script>
</body>
</html>
Ошибок куча:
- Идентификатора
numone не было
- Вместо
'click', function () { надо стрелочную функцию. Т.к. контекст теряется см. тут
- Для
NumOne и NumTwo надо делать объявление переменных, а не брать с потолка
class Calc {
constructor() {
this.Plus = document.querySelector('.plus');
this.Minus = document.querySelector('.minus');
this.NumberOne = document.getElementById('numone');
this.NumberTwo = document.getElementById('numtwo');
}
start() {
this.Plus.addEventListener('click', () => {
let NumOne = +this.NumberOne.value;
let NumTwo = +this.NumberTwo.value;
alert(NumOne + NumTwo)
});
}
}
let calc = new Calc;
calc.start();
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div>
<button class="plus">+</button>
<button class="minus">-</button>
</div>
<input id="numone" type="number" value="0" />
<input id="numtwo" type="number" value="0"/>
<script src="main.js"></script>
</body>
</html>