📜  Node.js stats.ctimeNs 属性

📅  最后修改于: 2022-05-13 01:56:49.858000             🧑  作者: Mango

Node.js stats.ctimeNs 属性

stats.ctimeNs属性是 fs.Stats 类的内置应用程序编程接口,用于获取自 POSIX 纪元以来文件状态上次更改时的时间戳,以纳秒表示。

句法:

stats.ctimeNs;

参数:属性没有任何参数,但在创建 stats 对象时 {bigint:true} 必须作为选项传递。

返回值:它返回一个数字或 BigInt 值,表示自 POSIX 纪元以来文件状态上次更改时的时间戳,以纳秒表示。

以下示例说明了 Node.js 中 stats.ctimeNs 属性的使用:

示例 1:

// Node.js program to demonstrate the   
// stats.ctimeNs property
  
// Accessing fs module
const fs = require('fs');
  
// Calling stats.ctimeNs property
// from fs.Stats class using stat
fs.stat('./', { bigint: true }, (err, stats) => {
    if (err) throw err;
  
    // The timestamp when the file status
    // has been changed last time (in NS)
    console.log("Using stat: " + stats.ctimeNs);
});
  
// Using lstat
fs.lstat('./filename.txt',
    { bigint: true }, (err, stats) => {
        if (err) throw err;
  
        // The timestamp when the file status
        // has been changed last time (in NS)
        console.log("Using lstat: " + stats.ctimeNs);
    });

输出:

Using stat: 1592665604516105.7
Using lstat: 1592665807796265

示例 2:

// Node.js program to demonstrate the   
// stats.ctimeNs property
  
// Accessing fs module
const fs = require('fs').promises;
  
// Calling fs.Stats stats.ctimeNs
(async () => {
    const stats = await fs.stat(
        './filename.txt', { bigint: true });
  
    // The timestamp when the file
    // status has been changed last
    // time (in NS)
    console.log("Using stat synchronous: "
                + stats.ctimeNs);
})().catch(console.error)

输出:

Using stat synchronous: 1592665807796265

注意:以上程序将通过使用node filename.js命令编译运行,并正确使用 file_path。

参考: https://nodejs.org/api/fs.html#fs_stats_ctimens