Как получить какой-либо вывод после последней операции, когда массив / объект имеет неизвестную длину? - PullRequest
0 голосов
/ 18 ноября 2018

Я работаю с полосой и использую их вспомогательную функцию для разбиения на страницы записей.

Тем не менее, я хотел бы знать, когда я достиг последней записи и выполнить какой-то вывод.

В настоящее время у меня есть код:

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) в цикле, и возвращать значение для каждого цикла, или я всегда получаю '0', если я помещаю console.log () где-либо еще, или даже в функция обратного вызова.

Как вернуть переменную / вывод истинного значения каждого из dupErrs, otherErrs, вставок?

...