let elBalance = document.getElementById(‘balance‘)
function init () {
var a = new Division(‘.page.a‘)
var b = new Dicision(‘.page.b‘)
}
function renderBalance(){
var resource = new Resource()
elBalance.innerText = resource.balance
}
function Division (selector) {
var resource = new Resource()
this.el = document.querySelector(selector)
this.elAdd = this.el.querySelector(‘.add‘)
this.elAdd = this.el.querySelector(‘.sub‘)
this.elInput = this.el.querySelector(‘input‘)
let me = this
this.elAdd.addEventListener(‘click‘, function () {
resource.add(me.elInput.value)
me.elInput.value = ‘‘
renderBalance()
})
this.elSub.addEventListener(‘click‘, function () {
resource.sub(me.elInput.value)
renderBalance()
})
}
function Resource () {
if (Resource.instance) {
return Resource.instance
}
else {
this.balance = 100
Resource.instance = this
}
}
Resource.prototype.add = function (num) {
this.change(num)
}
Resource.prototype.sub = function (num) {
this.change(-num)
}
Resource.prototype.change = function () {
if (!num) return
this.balance += parseFloat(num)
}