Отличие fs.unlink() от fs.unlinkSync()
Если выполнить код:
fs.unlink(<путь до интересующего файла>, function (err) { if (err) throw err; console.log("file deleted"); }); то файл удалится и в консоли отобразится: "file deleted" Если запустить код: fs.unlinkSync(<путь до интересующего файла>, function (err) { if (err) throw err; console.log("file deleted"); }); то файл удалится, но в консоли текст "file deleted" не выводится. Подскажите, пожалуйста, по какой причне во втором случае текст не показывается? |
Потому что все функции с суффиксом Sync выполняются синхронно и следовательно не принимают вторым агрументом колбэк-функцию, потому что это не имеет смысла.
Пиши так: fs.unlinkSync(<путь до интересующего файла>); console.log("file deleted"); Насчет отлова ошибок не уверен. Скорее всего будет брошено исключение, так что оберни в try .. catch, но лучше уточнить в документации по функциям. |
UPD:
В документации у метода fs.unlink() два аргумента - path, callback, у метода fs.unlinkSync() - всего один аргумент path. Если верно понял, то в случае: fs.unlinkSync(<путь до интересующего файла>, function (err) { if (err) throw err; console.log("file deleted"); }); второй аргумент игнорируется без выведения ошибок. danik.js Благодарю за ответ. |
Часовой пояс GMT +3, время: 09:42. |