Я заметил, что официальная документация node говорит что-то потрясающее о fs.exists:
"fs.exists() является анахронизмом и существует только по историческим причинам. В его собственном коде не должно быть причин использовать его.
В частности, проверка наличия файла перед его открытием анти-шаблон, который оставляет вас уязвимыми для условий гонки: другой процесс может удалить файл между вызовами fs.exists() и fs.open(). Просто откройте файл и обработайте ошибку, если она не там".
Я понимаю предложение, чтобы открыть файл, а затем обработать ошибку, если она не существует, но я не понимаю, почему интерфейс устарел, а не просто меняет реализацию.
Может ли кто-нибудь объяснить мне, почему проверка существования файла с api, который так же прост и логичен, как fs.exists, настолько плоха, что его следует называть анти-шаблоном и удалять из node API?