2016-08-02 7 views
-3

次のNode.jsコードは、ファイルが見つかったとしても 'undefined'を出力します。Node.js関数は 'undefined'を返します

var fileFound = function() { 
    fs.readFile('public/images/acphotos/Friedrich-EL36N35B.jpg', function(err, data) { 
      if (err) { 
      console.log(err); 
      return false; 
      } else { 
      return true; 
     } 
    }); 
} 

console.log("Return value: " + fileFound()); 

私はどのように書き直しますか?私は、私が示された他のスレッドの解を完全に理解していません。

+0

'fs.readfile'は***非同期です***! – adeneo

+0

'fileFound'関数は何も返しません。 – SteamDev

+0

各関数には独自の戻り値があります。 'fileFound'関数はJavaScriptで_undefined_を意味するものを返しません。 – undefined

答えて

1

returnステートメントは、fs.readFileに渡されたコールバックの内部にあるためです。

fileFound関数は何も返さないため、定義されません。

関連する問題