7/7 Cash Register, Staff Discount, What is wrong?


#1

Hey mates! I have some kind of a problem with this part. I really don't get what is wrong. I read through the threads here and the code-snippets posted seem to work and are similar to mine.

If I submit the code, my total is 17.18. That means that the "applyStaffDiscount" method doesn't work. This is all I know.

    
function StaffMember(name,discountPercent){
        this.name = name;
        this.discountPercent = discountPercent;
    }
    
    var sally = new StaffMember("Sally",5);
    var bob = new StaffMember("Bob",10);
    
    // Create yourself again as 'me' with a staff discount of 20%
    var me = new StaffMember("Mat",20);
    
    var cashRegister = {
        total:0,
        lastTransactionAmount: 0,
        add: function(itemCost){
            this.total += (itemCost || 0);
            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;
        },
        voidLastTransaction : function(){
            this.total -= this.lastTransactionAmount;
            this.lastTransactionAmount = 0;
        },
        // Create a new method applyStaffDiscount here
        applyStaffDiscount: function(employee){
            this.toal -= this.total*(employee.discountPercent/100);
        }
    };
    
    cashRegister.scan('eggs',1);
    cashRegister.scan('milk',1);
    cashRegister.scan('magazine',3);
    // Apply your staff discount by passing the 'me' object 
    // to applyStaffDiscount
    cashRegister.applyStaffDiscount("me");
    
    
    // Show the total bill
    console.log('Your bill is '+cashRegister.total.toFixed(2));

#2

you've toal instead of total,


#3

Oh wow.... And I've looked about half an hour on this code and didn't recognized it. Thank you!

And of course it is (me), not ("me").