Синхронные циклы JavaScript

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

у меня есть for Цикл, который, как я знаю, будет варьироваться в сотни тысяч, Узел остановит for цикл и вернуться к нему, или я могу безопасно предположить, что Node выполнит цикл до завершения, прежде чем вернуть мою функцию?

Вот петля в вопросе:

function fixData(dataset, blockcount){
  for (var i = 0, len = dataset.length; i < len; i++) {
    var obj = dataset[i];
    obj._id = obj.name;
    obj.expires = blockcount + obj.expires_in;
    delete obj.expires_in;
  }
  return dataset;
}

1 ответ

Решение

Циклы являются синхронными в Node.js и JavaScript, и синхронный код всегда выполняется до конца. Поэтому, если вы не выполняете вызовы асинхронных функций, вы можете быть уверены, что ваш код не будет прерван до его завершения.

Другие вопросы по тегам