You Deserved It!


I was able to follow the instructions and pass the test but there's one thing I don't understand. How does it understand that "employee" refers to StaffMember? Who can help me figure this out? Thanks!

function StaffMember(name,discountPercent){ = 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("Marloes",20);

var cashRegister = {
    lastTransactionAmount: 0,
    add: function(itemCost){ += (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.lastTransactionAmount;
        this.lastTransactionAmount = 0;
    // Create a new method applyStaffDiscount here
    applyStaffDiscount: function(employee){ -= * (employee.discountPercent / 100);

// Apply your staff discount by passing the 'me' object 
// to applyStaffDiscount

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


Is it this that you're confused about?

You can use anything in the place of employee, but the object will be the variable used.


Exactly, this is the part that confused me. So what you're saying I could also used another term instead of employee? Wouldn't it make more sense to use staffMember here?


It's whatever you use to help you remember it. You could use a or staff or shrek, it doesn't matter.


Ok, got it now. Thanks a million for helping me!