Node.js path 模块中给出了各种与操作系统相关的实用程序方法和属性。
path 模块的Node.js path.toNamespacedPath() 方法接受一个路径,并返回一个带有等效命名空间前缀的路径。如果给定的路径不是字符串,则将返回而不进行任何修改。
此方法仅在 Windows 操作系统上才有意义。而在 POSIX 系统上,该方法是不可操作的,并且不做任何修改就返回给定的路径
语法
以下是 path 模块的Node.js path.toNamespacedPath()方法的语法 -
path.toNamespacedPath(path)
参数
- path − 此参数指定必须转换的路径。
返回值
此方法返回一个字符串,该字符串具有等效的命名空间前缀路径。
例如果为Node.js path.toNamespacedPath() 方法提供了路径,它将返回具有等效命名空间前缀路径的给定路径。
在以下示例中,我们将规范化路径传递给 Node.js path.toNamespacedPath() 方法。
const path = require('path');
var result = path.toNamespacedPath("C:/Users/Lenovo/Desktop/JavaScript/Nodefile.js");
console.log("The namespaced path result: ", result);
输出
如果在在线编译器(POSIX)中执行上述程序,则输出显示如下。
The namespaced path result: C:/Users/Lenovo/Desktop/JavaScript/Nodefile.js
以下是我们在 WINDOWS 操作系统上执行上述代码时的输出。
The namespaced path result: \\?\C:\Users\Lenovo\Desktop\JavaScript\Nodefile.js
例
如果给定路径未规范化,则Node.js path.toNamespacedPath() 方法将规范化,然后返回给定路径的命名空间前缀路径。
在下面的程序中,我们将一个未规范化的路径传递给Node.js path.toNamespacedPath() 方法。
const path = require('path');
var actualPath = "C:/Users////Lenovo/Desktop//////JavaScript/..//Nodefile.js";
console.log("The actual path: ", actualPath);
var result = path.toNamespacedPath(actualPath)
console.log("The namespaced path result: ", result);
输出
如果在在线编译器(POSIX)中执行上述程序,则输出显示如下。
The actual path: C:/Users////Lenovo/Desktop//////JavaScript/..//Nodefile.js
The namespaced path result: C:/Users////Lenovo/Desktop//////JavaScript/..//Nodefile.js
The namespaced path result: C:/Users////Lenovo/Desktop//////JavaScript/..//Nodefile.js
以下是我们在 WINDOWS 操作系统上执行上述代码时的输出。
The actual path: C:/Users////Lenovo/Desktop//////JavaScript/..//Nodefile.js
The namespaced path result: \\?\C:\Users\Lenovo\Desktop\Nodefile.js
The namespaced path result: \\?\C:\Users\Lenovo\Desktop\Nodefile.js