Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 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("Eleison", 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) {
- switch (employee) {
- case "sally":
- this.name = sally.name;
- this.total = this.total - (this.total * (sally.discountPercent / 100));
- break;
- case "bob":
- this.name = bob.name;
- this.total = this.total - (this.total * (bob.discountPercent / 100));
- break;
- case "me":
- this.name = me.name;
- this.total = this.total - (this.total * (me.discountPercent / 100));
- break;
- }
- return true;
- }
- };
- 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));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement