Причина, по которой обе синхронизации и асинхронное verisons этих операций является то, что они могут быть отнимающим много времени, и поскольку node.js имеет одно- потоковый основной цикл событий, вы ни в коем случае не хотите блокировать цикл событий медленными синхронными вызовами функций.
Вот почему все делается с помощью обратных вызовов (или обещаний, обетах или того, что ваш особый вкус в асинхронном материале). Таким образом, вы можете иметь цикл событий, который просто вызывает функцию async и обрабатывает результат функции async в обратном вызове, когда это произойдет.
Это одна из основных преимуществ node.js и одно из основных правил: «не блокировать цикл основного события».
Вы понимаете, что означает async? – SLaks
Да. Я не видел функции async и sync для выполнения одной и той же задачи на любом другом языке программирования или скриптинга. Вот почему я спросил об этом. –
C# имеет синхронизирующие и асинхронные версии большинства неблокирующих операций. – SLaks