📜  Node.js stat.isSocket() 方法

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

Node.js stat.isSocket() 方法

stats.isSocket()方法是 fs.Stats 类的内置应用程序编程接口,用于检查 fs.Stats 对象是否描述了套接字。

句法:

stats.isSocket();

参数:此方法不接受任何参数。

返回值:此方法返回一个布尔值,如果 fs.Stats 对象描述了一个套接字,则返回 true,否则返回 false。

下面的示例说明了 Node.js 中 stats.isSocket() 方法的使用:

示例 1:

// Node.js program to demonstrate the   
// stat.isSocket() Method
  
// Accessing fs module
const fs = require('fs');
  
// Calling isSocket() method from fs.Stats
// class using lstat() method
fs.lstat('./', (err, stats) => {
    if (err) throw err;
  
    // console.log(`stats: ${JSON.stringify(stats)}`);
    console.log(stats.isSocket());
    if (stats.isSocket()) {
        console.log("fs.lstats describes a Socket.");
    } else {
        console.log("fs.lstats does not describe a socket.");
    }
});
  
// Using stat() method
fs.stat('./', (err, stats) => {
    if (err) throw err;
  
    // console.log(`stats: ${JSON.stringify(stats)}`);
    console.log(stats.isSocket());
    if (stats.isSocket()) {
        console.log("fs.stats describes a socket.");
    } else {
        console.log("fs.stats does not describe a socket.");
    }
});

输出:

false
fs.lstats does not describe a socket.
false
fs.stats does not describe a socket.

示例 2:

// Node.js program to demonstrate the   
// stat.isSocket() Method
  
// Accessing fs module
const fs = require('fs').promises;
  
// Calling isSocket() method from
// fs.Stats class
(async () => {
    const stat = await fs.lstat('./');
    console.log(stat.isSocket());
})().catch(console.error)

输出:

false

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

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