items.forEach(function(item) {
var newItem = new Item();
newItem.name = item.name;
newItem.icon_url = item.icon_url;
newItem.icon_url_large = item.icon_url_large;
newItem.type = item.type;
community.getMarketItem(item.appid, item.market_hash_name, function(err, item) {
if(err) throw err;
newItem.lowestPrice = item.lowestPrice;
logger.info('Get price');
newItem.save(function(err) {
if(err) throw err;
logger.info(' New Item saved!');
});
});
newBet.item.push(newItem);
});
// нужно чтобы этот код выполнялся после цикла
newBet.save(function(err) {
if(err) throw err;
logger.info(' New Bet saved!');
});
Вот рабочий код, если кому нужно будет.
async.each(items, function(item, callback){
var newItem = new Item();
newItem.name = item.name;
newItem.icon_url = item.icon_url;
newItem.icon_url_large = item.icon_url_large;
newItem.type = item.type;
community.getMarketItem(item.appid, item.market_hash_name, function(err, item) {
if(err) throw err;
newItem.lowestPrice = item.lowestPrice;
logger.info('Get price');
newItem.save(function(err) {
if(err) throw err;
logger.info(' New Item saved!');
newBet.item.push(newItem);
callback();
});
});
}, function(err) {
newBet.save(function(err) {
if(err) throw err;
logger.info(' New Bet saved!');
});
});
[1,2,3].forEach(function(item){
console.log(item)
});
console.log(4)
//1 2 3 4
var resultHolder = document.querySelector('#result');
var result = '';
[1,2,3,4,5].forEach(function(item, index, arr) {
result += index + ':' + item + '<br>';
if(index === arr.length-1)
resultHolder.innerHTML = result;
});