Javascript nodejs fs.utimes使用什么格式
在nodejs中,Javascript nodejs fs.utimes使用什么格式,javascript,node.js,Javascript,Node.js,在nodejs中,fs.utimes的参数应该以什么格式编写,例如atime,mtime API:fs.utimes(path、atime、mtime、callback)这些参数是JavaScriptDates,而不是字符串 请注意,atime、mtime和ctime是日期对象的实例,要比较这些对象的值,应使用适当的方法。对于大多数一般用途,getTime()将返回自1970年1月1日00:00:00 UTC以来经过的毫秒数,并且该整数应足以进行任何比较,但是还有其他方法可用于显示模糊信息。更
fs.utimes
的参数应该以什么格式编写,例如atime
,mtime
API:
fs.utimes(path、atime、mtime、callback)
这些参数是JavaScriptDate
s,而不是字符串
请注意,atime、mtime和ctime是日期对象的实例,要比较这些对象的值,应使用适当的方法。对于大多数一般用途,getTime()将返回自1970年1月1日00:00:00 UTC以来经过的毫秒数,并且该整数应足以进行任何比较,但是还有其他方法可用于显示模糊信息。更多详细信息可以在MDN JavaScript参考页面中找到
从以下方面:
这表明它可以是Javascript日期或Unix样式的数字日期
这句话真的很重要<代码>返回时间.getTime()/1000这意味着,如果传入一个数字,则传入一个Unix样式的数字,其中毫秒以1/1000表示,这与从Date.getTime()返回的整数不同。
请编辑问题的主题行。为什么不阅读文档并找出答案呢?文档并不清晰。他们只在一些fs调用中详细说明。好吧,公平地说,这是事实。这是
fs.Stats
的文档,而不是fs.utimes
。我同意明显的解释是两种类型应该是相同的,但值得注意的是,文档(当然还有这段引文)并没有证明这一点。@LightnessRacesinOrbit更好:-)真的很重要救了我,我错误地认为是毫秒。
fs.utimes = function(path, atime, mtime, callback) {
callback = makeCallback(callback);
if (!nullCheck(path, callback)) return;
binding.utimes(pathModule._makeLong(path),
toUnixTimestamp(atime),
toUnixTimestamp(mtime),
callback);
};
// converts Date or number to a fractional UNIX timestamp
function toUnixTimestamp(time) {
if (util.isNumber(time)) {
return time;
}
if (util.isDate(time)) {
// convert to 123.456 UNIX timestamp
return time.getTime() / 1000;
}
throw new Error('Cannot parse time: ' + time);
}