在fs.stat之后获得'undefined'

时间:2015-12-08 22:32:29

标签: javascript node.js

我有一个函数可以在编辑之前测试文件是否存在。我使用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都不存在),它会在undefined之前返回You don't have a bower.json file!。为什么会发生这种情况?如何停止打印功能undefined

编辑:供参考,这是运行命令后的终端窗口: enter image description here

为什么要打印undefined,如何才能显示?

1 个答案:

答案 0 :(得分:2)

您从undefined函数返回任何内容或reading

Gist for posterity