What's wrong with this? #5


#1

This is giving me a message of "Oops, try again. false" What's wrong??

var cashRegister = {
    total:0,
    //Dont forget to add your property
    lastTransactionAmount: 0,
    add: function(itemCost) {
        this.lastTransactionAmount = itemCost;
        this.total += 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.total - lastTransactionAmount;
    }
};

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

//Void the last transaction and then add 3 instead
cashRegister.voidLastTransaction();
cashRegister.scan('milk',3);

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

#2

Hey @mradamd! Just a minor problem! For that exercise your suppose to scan 3 eggs instead of milks so make the following corrections!

Your Code problem:

Correct Code:
cashRegister.scan('eggs',3);

If that dosent work please reply saying so!


#3

Thank @amanuel ... but it still doesn't work :disappointed:

var cashRegister = {
    total:0,
    //Dont forget to add your property
    lastTransactionAmount: 0,
    add: function(itemCost) {
        this.lastTransactionAmount = itemCost;
        this.total += 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.total - this.lastTransactionAmount;
    }
};

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

//Void the last transaction and then add 3 instead
cashRegister.voidLastTransaction();
cashRegister.scan('eggs',3);

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

#4

Oh sorry!! Can you try chocolate instead of eggs! I was mistaken!! Sorry


#5

Ah yes! Of course! :blush: Thank you. That worked.

I didn't read the instructions carefully enough. It says to scan 3 of the same item.


#6

No problem sir! Glad to help!