5/7 Bleep Bleep Math problem


#1

var cashRegister = {
total:0,
//Dont forget to add your property
lastTransactionAmount: 0,

add: function(itemCost) {
    this.total +=  itemCost;
    this.lastTransactionAmount = itemCost;
},
scan: function(item,quantity) {
    switch (item) {
    case "eggs": this.add(0.98 * quantity); break;
    case "milk": this.add(1.23 * quantity); break;
    case "magazine": this.add(4.99 * quantity); break;
    case "chocolate": this.add(0.45 * quantity); break;
    }
    return true;
},
//Add the voidLastTransaction Method here
voidLastTransaction: function() {
    this.total -= this.lastTransactionAmount;
}

};

cashRegister.scan('eggs',1);
cashRegister.scan('milk',1);
cashRegister.scan('magazine',1);
cashRegister.scan('chocolate',3);

//Void the last transaction and then add 3 instead

//Show the total bill
console.log('Your bill is '+cashRegister.total);

This is my code.
When I click submit it passes.
It gives me an answer "Your bill is 8.55".

Shouldn't it be 7.2? because as I understood the total amount should be decreased by the sum of last transaction (3x chocolate which cost 0.45 each) ;


#2

But you have not voided anything, you made the function, but did not call it out. Math is correct with the code you provided.

And at first you should have 4 chocolates, then with void you change it to 3


#3

you should add there
cashRegister.voidLastTransaction();

cashRegister.scan("chocolate", 3);


#4

I understood.
thank you very much.