object作为数组元素 - 控制台日志输出令人困惑

时间:2017-06-02 21:44:56

标签: javascript

var cart = [];
var Item = function(name, price, count) {
  this.name = name
  this.price = price
  this.count = count
};

function addItemtocart(name, price, count) {
  var item = new Item(name, price, count);
  for (var i in cart) {
    if (name == cart[i].name) {
      cart[i].count = cart[i].count + count;
      return;
    }
  }
  cart.push(item);
};

function remItemfromcart(name) {
  for (var i in cart) {
    if (name == cart[i].name) {
      cart[i].count = cart[i].count - 1;
      return;
    }
  }
};

addItemtocart('papaya', 2, 5);
console.log(cart);
console.log(cart[0].count);
remItemfromcart('papaya');

我得到了这个输出

[Item] 0: Itemcount:4 name:“papaya”price:2__proto__:Objectlength:1__proto__:Array(0)

index.html:41 5

这里的控制台日志输出对我来说很惊讶。我在调用控制台日志后调用了remItemfromcart。可能是一个愚蠢的问题 - 请帮助我理解这个

0 个答案:

没有答案