node.js读取目录报错“TypeError: Cannot read properties of undefined (reading ‘isDirectory‘)“

Posted 二木成林

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node.js读取目录报错“TypeError: Cannot read properties of undefined (reading ‘isDirectory‘)“相关的知识,希望对你有一定的参考价值。

异常

D:\\NodeJs\\node-demo\\demo\\world.js:3
   console.log(stats.isDirectory())
                     ^

TypeError: Cannot read properties of undefined (reading 'isDirectory')
    at D:\\NodeJs\\node-demo\\demo\\world.js:3:22
    at FSReqCallback.oncomplete (node:fs:198:21)

Node.js v17.1.0

错误代码

var fs=require('fs');
fs.stat('F:\\\\System Volume-Information',function (err, stats) {
   console.log(stats.isDirectory())
});

原因

F:\\System Volume Information目录并不存在,当目录不存在的时候会报错。

但在fs.readdir()方法检索目录下所有文件时,会检索出该目录,而System Volume Information是一个非常特殊的目录,普通方法还无法删除。需要注意。

解决

可以考虑对它进行单独判断。

以上是关于node.js读取目录报错“TypeError: Cannot read properties of undefined (reading ‘isDirectory‘)“的主要内容,如果未能解决你的问题,请参考以下文章

TypeError:无法读取未定义的属性“获取”(Node.js)

node.js/discord.js:TypeError:无法读取 null 的属性“setPresence”

Node.js UnhandledPromiseRejection:TypeError:无法读取未定义的属性“符号”

Node.js Discord.js UnhandledPromiseRejectionWarning:TypeError:无法读取未定义的属性“calculatedPosition”

Node.js:在没有返回记录的 SQL 查询中:TypeError:无法读取未定义的属性

Node.js 和 jdbc:TypeError:无法读取未定义的属性“url”