当数组/对象的长度未知时,如何在最后一次操作后得到一些输出?

时间:2018-11-18 16:47:00

标签: javascript node.js stripe-payments

我正在使用Stripe,并使用其助手功能对记录进行分页。

但是,我想知道何时到达最后一条记录并执行一些输出。

目前我拥有的代码是:

var dupErrs = 0;
var otherErrs = 0;
var inserts = 0;

stripe.charges.list().autoPagingEach(function(charge) {

  var post  = {
    chargeId: charge.id,
    customerId: charge.customer,
    sourceId:charge.source.id,
    amount:charge.amount/100,
    description:charge.description,
    dateAndTime:moment(charge.created*1000).format('YYYY-MM-DD HH:mm:ss'),
    chargeStatus:charge.status,
    failureMessage:charge.failure_message
  };

  db.query('INSERT INTO charges SET ?',post,function(err, result) {
    if(err.code=='ER_DUP_ENTRY'){
      dupErrs++;
    }
    else if(err && err.code !== 'ER_DUP_ENTRY'){
      console.log(err);
      otherErrs++;
    }
    else{
      inserts++;
      result;
    }
  });
});

使用此代码,我可以在循环中使用console.log(dupErrs)并返回每个循环的值,或者如果将console.log()放在其他任何地方,甚至在回调函数。

如何返回dupErrs,otherErrs,inserts的真实值的变量/输出?

0 个答案:

没有答案