fs-stat赋予价值-Node.js

时间:2019-02-14 10:10:41

标签: node.js fs

我的问题是我想让处理时间超出fs-stat-function的范围。 我该如何实现? 如果异步功能无效,或者您将如何处理?

var time;
time = fs.stat(path, function(err, stats){  
  timestamp = stats.mtimeMs;
  console.log(timestamp); // 65463453
  return timestamp;
});

如何从变量“ time”中的“ fs-stat”的“ function(err,stats)”获得结果?

2 个答案:

答案 0 :(得分:0)

@SayedTauseefHaiderNaqvi

这是完整的代码:

function getTime(path) {

   var fs = require('fs');
   var time;
   time = fs.stat(path, function(err, stats){  
     timestamp = stats.mtimeMs;
     console.log(timestamp); //65463453
     return timestamp;
   });
   console.log(time); //undefined
   return time;
 }

答案 1 :(得分:0)

您可以编写这样的代码,并用promise调用getTime函数,您将获得该值。

var fs = require('fs');
function getTime(path) {
    return new Promise(function (resolve, reject) {
        fs.stat(path, function (err, stats) {
            if (err) {
                return reject(err)
            }
            return resolve(stats.mtimeMs);
        });
    })
}

这样的调用功能

getTime('./').then(function (timestamp) {
    console.log(timestamp)
})