数码资讯
对fs.realpathsync方法在Node.js的使用说明
方法显示: Fs.realpath()的同步版本。 Grammar: 复制代码代码如下所示: Fs.realpathSync(路径缓存,{ }) 由于此方法属于fs模块,因此需要在使用之前引入FS模块(var FS =需求(fs))。 接收参数: 路径 缓存是可选的。一个文本映射路径可用于强制一个特
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
方法显示:
Fs.realpath()的同步版本。
Grammar:
复制代码代码如下所示:
Fs.realpathSync(路径缓存,{ })
由于此方法属于fs模块,因此需要在使用之前引入FS模块(var FS =需求(fs))。
接收参数:
路径
缓存是可选的。一个文本映射路径可用于强制一个特定的路径来解决或避免额外的fs.stat需要知道真实的路径对象。
实例uff1a
复制代码代码如下所示:
VaR FS =需要('fs);
表示当前的搜索路径。
var str = fs.realpathsync(' ');
console.log(STR);
源代码 uff1a
复制代码代码如下所示:
fs.realpathsync =功能realpathsync(P,缓存){
p是绝对的。
P = pathmodule.resolve(P);
如果(高速缓存(Cache object.prototype.hasownproperty.call,P)){
返回高速缓存{ };
}
原始值= P,
seenlinks = { },
knownhard = { };
字符当前位置
VaR的POS;
部分路径如此,包括一个尾随斜杠,如果有的话
无功电流;
部分路径没有拖尾斜杠(除了指向根)
VAR方法;
在前一轮中用斜杠扫描的部分路径。
var之前;
开始();
函数start(){
在根目录下跳过
var m = splitrootre.exec(P);
POS = 0 { }。长度;
当前= m { 0 };
基= m { 0 };
前=;
在windows上检查,根是存在的。在UNIX上是没有必要的。
如果(在Windows!knownhard {基}){
Fs.lstatSync(基地);
knownhard {基} =真;
}
}
下 / /行走路径交换链接pathparts他们真实
值
p.length变化。:
而(POS < p.length){
下一部分
nextpartre.lastindex = POS;
var result = nextpartre.exec(P);
前=当前;
当前结果= { 0 };
基础=前+结果{ 1 };
POS = nextpartre.lastindex;
如果没有一个符号 / /继续
如果(knownhard {基} | |(缓存{基} =基地)){
继续;
}
无功resolvedlink;
如果(高速缓存(Cache object.prototype.hasownproperty.call,基地)){
一些已知的符号链接。不需要再重新统计。
resolvedlink =缓存{基};
{ { { }
var属性= fs.lstatsync(基地);
如果(!Stat.isSymbolicLink()){
knownhard {基} =真;
如果(高速缓存)缓存;
继续;
}
阅读链接,如果它不是之前读过的
总是返回0 / / /伊诺开发Windows,所以跳过检查。
无功linktarget = null;
如果(!IsWindows){
var id = stat.dev.tostring(32)+:+ stat.ino.tostring(32);
如果(seenlinks.hasownproperty(ID)){
linktarget = seenlinks {id};
}
}
如果(util.isnull(linktarget)){
Fs.statSync(基地);
linktarget = fs.readlinksync(基地);
}
resolvedlink = pathmodule.resolve(以前,linktarget);
如果给定/跟踪这个缓存。
如果缓存(缓存){ } = resolvedlink基地;
如果(!IsWindows)seenlinks {id} = linktarget;
}
链接解析,然后重新开始
P = pathmodule.resolve(resolvedlink,p.slice(POS));
开始();
}
如果(缓存)缓存{原来的} = p;
返回p;
};
Fs.realpath()的同步版本。
Grammar:
复制代码代码如下所示:
Fs.realpathSync(路径缓存,{ })
由于此方法属于fs模块,因此需要在使用之前引入FS模块(var FS =需求(fs))。
接收参数:
路径
缓存是可选的。一个文本映射路径可用于强制一个特定的路径来解决或避免额外的fs.stat需要知道真实的路径对象。
实例uff1a
复制代码代码如下所示:
VaR FS =需要('fs);
表示当前的搜索路径。
var str = fs.realpathsync(' ');
console.log(STR);
源代码 uff1a
复制代码代码如下所示:
fs.realpathsync =功能realpathsync(P,缓存){
p是绝对的。
P = pathmodule.resolve(P);
如果(高速缓存(Cache object.prototype.hasownproperty.call,P)){
返回高速缓存{ };
}
原始值= P,
seenlinks = { },
knownhard = { };
字符当前位置
VaR的POS;
部分路径如此,包括一个尾随斜杠,如果有的话
无功电流;
部分路径没有拖尾斜杠(除了指向根)
VAR方法;
在前一轮中用斜杠扫描的部分路径。
var之前;
开始();
函数start(){
在根目录下跳过
var m = splitrootre.exec(P);
POS = 0 { }。长度;
当前= m { 0 };
基= m { 0 };
前=;
在windows上检查,根是存在的。在UNIX上是没有必要的。
如果(在Windows!knownhard {基}){
Fs.lstatSync(基地);
knownhard {基} =真;
}
}
下 / /行走路径交换链接pathparts他们真实
值
p.length变化。:
而(POS < p.length){
下一部分
nextpartre.lastindex = POS;
var result = nextpartre.exec(P);
前=当前;
当前结果= { 0 };
基础=前+结果{ 1 };
POS = nextpartre.lastindex;
如果没有一个符号 / /继续
如果(knownhard {基} | |(缓存{基} =基地)){
继续;
}
无功resolvedlink;
如果(高速缓存(Cache object.prototype.hasownproperty.call,基地)){
一些已知的符号链接。不需要再重新统计。
resolvedlink =缓存{基};
{ { { }
var属性= fs.lstatsync(基地);
如果(!Stat.isSymbolicLink()){
knownhard {基} =真;
如果(高速缓存)缓存;
继续;
}
阅读链接,如果它不是之前读过的
总是返回0 / / /伊诺开发Windows,所以跳过检查。
无功linktarget = null;
如果(!IsWindows){
var id = stat.dev.tostring(32)+:+ stat.ino.tostring(32);
如果(seenlinks.hasownproperty(ID)){
linktarget = seenlinks {id};
}
}
如果(util.isnull(linktarget)){
Fs.statSync(基地);
linktarget = fs.readlinksync(基地);
}
resolvedlink = pathmodule.resolve(以前,linktarget);
如果给定/跟踪这个缓存。
如果缓存(缓存){ } = resolvedlink基地;
如果(!IsWindows)seenlinks {id} = linktarget;
}
链接解析,然后重新开始
P = pathmodule.resolve(resolvedlink,p.slice(POS));
开始();
}
如果(缓存)缓存{原来的} = p;
返回p;
};
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。