This forum is now read-only. Please use our new forums! Go to forums
Building a Cash register
I’m not able to understand why the code is failing to pass. I believe it to be a bug in the interface or system else please correct or put some light about what could be possibly wrong. Problem is at http://www.codecademy.com/courses/close-the-super-makert/0/5?curriculum_id=506324b3a7dffd00020bf661
Solution I added was
var cashRegister = {
total:0,
lastTransactionAmount: 0,
quantity: 0,
//Dont forget to add your property
add: function(itemCost) {
this.total += itemCost;
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’,4);
//Void the last transaction and then add 3 instead cashRegister.voidLastTransaction();
//Show the total bill console.log(‘Your bill is ‘+cashRegister.total);
Answer 540916a1282ae35398001c1b
take out your lastTransactionAmount and Quantity variable. you only need them in your scan function. Also, your code seems a bit complex try simplifying your math to only one line… Hope that helps.
Here’s my code that passed.
var cashRegister = {
total:0,
//Dont forget to add your property
add: function(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(itemCost)
{
this.total -= itemCost;
}
};
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(0.45);
//Show the total bill- console.log(‘Your bill is ‘+cashRegister.total);
Popular free courses
- Free Course
Learn SQL
In this SQL course, you'll learn how to manage large datasets and analyze real data using the standard data management language.Beginner friendly,4 LessonsLanguage Fluency - Free Course
Learn JavaScript
Learn how to use JavaScript — a powerful and flexible programming language for adding website interactivity.Beginner friendly,11 LessonsLanguage Fluency - Free Course
Learn HTML
Start at the beginning by learning HTML basics — an important foundation for building and editing web pages.Beginner friendly,6 LessonsLanguage Fluency