// constructor
function IceCream() {
  this.scoops = 0;
}
// adds scoop to ice cream
IceCream.prototype.addScoop = function() {
  const cone = this; // sets `this` to the `cone` variable
  setTimeout(function() {
    cone.scoops++; // references the `cone` variable
    console.log('scoop added!');
  }, 0.5);
};
const dessert = new IceCream();
dessert.addScoop();
console.log(dessert.scoops);
In this code my expectation for the output of console.log(dessert.scoops)
is to be 1 but it returns 0.
Can anyone give me some valid reason?
 
     
    