Node.js 使用fs获取家长链

Node.js 使用fs获取家长链,node.js,Node.js,我想获取当前目录的父目录数组。目前我正在做这件事 function parseStructure(drive) { let structure = []; while (drive.length > 3) { structure.unshift(path.basename(drive)); drive = path.dirname(drive); } drive = drive.substr(0, 1); struct

我想获取当前目录的父目录数组。目前我正在做这件事

function parseStructure(drive) {
    let structure = [];
    while (drive.length > 3) {
        structure.unshift(path.basename(drive));
        drive = path.dirname(drive);
    }
    drive = drive.substr(0, 1);
    structure.unshift(drive);

    return structure;
}
因为
path.dirname('C://')
返回
C://
。这可能会在Windows上工作,但在Linux上可能不会。如何检查当前目录是否为根目录

此路由
C:\Users\user\SO
应返回
['C'、'Users'、'user'、'SO']
的数组,此路由
/usr/user/SO
应返回
['usr'、'user'、'SO']
的数组。您可以尝试

path.resolve().split(path.sep);
// ['', 'home', 'myuser', 'mydir', 'my-nested-dir']
它将把目录数组打印到当前目录(
process.cwd()

要从一开始就删除多余的空字符串,可以切片此数组:

path.resolve().split(path.sep).slice(1);
// ['home', 'myuser', 'mydir', 'my-nested-dir']

您是否尝试过
path.resolve().split(path.sep)
?事实上,我没有。如果你愿意,你可以把这个作为答案贴出来,否则我明天会给你。