Добро пожаловать в обратный вызов ада .
"Оставь все надежды, входящие сюда."
Данте Алигьери
Менее поэтическое c описание вашей проблемы заключается в том, что вы используете обратные вызовы и ожидаете, что они будут выполнены до кода, который вы увидите после них. Но это не так, как они работают. Позвольте мне объяснить, что делает ваш код:
Он повторяет результат и для каждого экземпляра устанавливает count
в 0 и асинхронно ожидает выполнения запроса и ожидает его выполнения, фактически не ожидая его быть выполненным, он толкает объекты (содержащие count
) к arr
. Но count
еще не обновлен, запросы все еще выполняются. Просто введите этот код
arr.push({
server: server.server,
name: server.name,
plan_id: server.plan_id,
mb_stripe: server.mb_stripe,
description: server.description,
key_stock: server.key_stock,
channel: server.channel,
active: count
});
сразу после вашего console.log
.