Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.05.2014, 19:33
Аспирант
Отправить личное сообщение для TorchTT Посмотреть профиль Найти все сообщения от TorchTT
 
Регистрация: 20.03.2014
Сообщений: 59

Отличие 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" не выводится.

Подскажите, пожалуйста, по какой причне во втором случае текст не показывается?

Последний раз редактировалось TorchTT, 19.05.2014 в 19:53.
Ответить с цитированием
  #2 (permalink)  
Старый 19.05.2014, 19:49
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Потому что все функции с суффиксом Sync выполняются синхронно и следовательно не принимают вторым агрументом колбэк-функцию, потому что это не имеет смысла.

Пиши так:
fs.unlinkSync(<путь до интересующего файла>);
console.log("file deleted");

Насчет отлова ошибок не уверен. Скорее всего будет брошено исключение, так что оберни в try .. catch, но лучше уточнить в документации по функциям.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 19.05.2014, 19:53
Аспирант
Отправить личное сообщение для TorchTT Посмотреть профиль Найти все сообщения от TorchTT
 
Регистрация: 20.03.2014
Сообщений: 59

UPD:

В документации у метода fs.unlink() два аргумента - path, callback, у метода fs.unlinkSync() - всего один аргумент path.

Если верно понял, то в случае:

fs.unlinkSync(<путь до интересующего файла>, function (err) {
    if (err) throw err;
    console.log("file deleted");
});

второй аргумент игнорируется без выведения ошибок.

danik.js
Благодарю за ответ.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отличие в анимации на разных браузерах nevka Элементы интерфейса 4 10.04.2013 15:13
В чем отличие bind от call и apply? platedz Events/DOM/Window 11 08.04.2013 07:24
jquery отличие ClientX от PageX и offsetX ? SunYang Общие вопросы Javascript 1 15.07.2012 18:27
какое отличие между filter и is Arkinsstoun jQuery 5 19.01.2012 22:18