Bleep bleep help


#1

var cashRegister = {
total:0,
lastTransactionAmount:0,
//Dont forget to add your property
add: function(itemCost) {
this.total += itemCost;
var 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();
cashRegister.scan('chocolate',3);
//Show the total bill
console.log('Your bill is '+cashRegister.total);


#2

help me...i got
SyntaxError: Unexpected identifier


#3

You don't have "," after your scan function.
I also changed var lastTransactionAmount = itemCost;
to this.lastTransactionAmount = itemCost; this is important! if you would leave var instead of this your voidLastTransaction method wouldn't work at all and the bill would be 10,35.

var cashRegister = {
  total: 0,
  lastTransactionAmount: 0,
  //Dont forget to add your property
  add: function(itemCost) {
       this.total += itemCost;
       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;
  },
//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();
cashRegister.scan('chocolate',3);
//Show the total bill
console.log('Your bill is '+cashRegister.total);

#4

still helpless.....its not work i used ,


#5

Just copy my code. It works in my console.


#6

yes Your bill is 10.35
but return false


#7

When i use your code it doesn't work. If you fix the comma it shows 10.35. If you fix both thing i mentioned it shows 8,55 which is correct and my code works both in codecademy and in my browser console.


#8

thank you.....its work


#9

Ok :slight_smile: try to understand what i changed in your code and keep that in mind!


#10

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.