Доброго времени суток, при изучении и углублении в JS решил написать калькулятор, правда не очень сложный, но все же и столкнулся с проблемой:
Uncaught ReferenceError: inputData is not defined.
// The main JS File
'use strict';
var action = {
add: function(a, b) {
return a + b;
},
substract: function(a, b){
return a - b;
},
multiply: function(a, b){
return a * b;
},
devide: function(a, b) {
return a / b;
}
}
var tablo = {
statusLine: " ",
tabloHtml: document.getElementById("calculator-result"),
show: function(){
tabloHtml.innerHTML = statusLine;
},
setLine: function(str){
statusLine = str;
this.show();
},
}
var calculator = {
calc_action: action,
calc_tablo: tablo,
inputData: 0,
action: [],
digit: [],
addToData: function(value){
this.inputData += parseFloat(value);
this.calc_tablo.setLine(inputData);
this.logArray("Add to Data:");
},
addData: function(value){
this.inputData = parseFloat(value);
this.calc_tablo.setLine(inputData);
this.logArray("Add Data:");
},
clearData: function(){
this.inputData = 0;
},
logArray: function(str){
console.log(str);
console.log(this.action);
console.log(this.digit);
},
}
// Listen Digit button
var listen = function (){
var buttonName = this.getAttribute("class");
calculator.addToData(this.innerHTML);
}
window.onload = function(){
var buttons = document.querySelectorAll('button')
for (var i = 0; i < buttons.length; i++){
buttons[i].addEventListener('click', listen, false);
}
}
Буду признателен за объяснение почему, и как следует исправить.