获取'未定义'在fs.stat之后

我有一个函数来testing一个文件是否存在或不编辑之前。 我使用fs.stat。

fs.stat('../fill/bower.json', function (err, stats) { if (err) { console.log('You don\'t have a ' + clc.red('bower.json') + ' file! Type ' + clc.bgBlack.white('touch bower.json') + ' to get started.'); return; } if (stats.isFile()) { var json = JSON.parse(fs.readFileSync('../bower.json', 'utf8')), string = '\n Dependencies: ' + json; fs.writeFile('../fill/README.md,', string, 'utf8'); console.log('it\'s saved!'); } }) 

然而,每次我运行它( bower.json不存在的目的),它You don't have a bower.json file!之前返回undefined You don't have a bower.json file! 。 为什么会发生这种情况,如何停止打印undefined的function?

编辑:作为参考,这是我的terminal窗口运行命令后: 在这里输入图像说明

为什么undefined打印,我该怎么做才能显示?

你没有返回任何东西或从你的readingfunctionundefined

为了后代