• Node.js Video Tutorials

Node.js - path.isAbsolute() 方法



Node.js path.isAbsolute() 方法将返回一个布尔值,指示给定路径是否为绝对路径。具有定位特定文件所需的所有详细信息的路径被认为是绝对路径。它用于确定给定路径是否解析到文件系统的根目录。

如果给定的文件路径长度为零或为空字符串,则此方法将返回 false。如果给定文件路径字符串以外的值,则此方法将返回TypeError

语法

以下是 path 模块的 Node.js path.isAbsolute() 方法的语法:

path.isAbsolute(path)

参数

  • path − 此参数指定一个特定的文件路径字符串;用于确定它是否为绝对路径。如果path 不是字符串,则会抛出TypeError

返回值

此方法将返回布尔值。如果给定的文件路径是绝对路径,则返回 true,否则返回 false。

示例

如果给定的路径是绝对路径,则Node.js path.isAbsolute() 方法将返回 true。

在下面的示例中,我们尝试执行给定path 文件为绝对路径的所有可能性。

const path = require('path');

var path1 = path.isAbsolute("/Users/Lenovo/Desktop/JavaScript/Nodefile.js");
console.log(path1);

var path2 = path.isAbsolute("////////Nodefile.js");
console.log(path2);

var path3 = path.isAbsolute("/Users/Lenovo/...");
console.log(path3);

输出

执行上述程序后,path.isAbsolute() 方法返回true,因为给定的文件path 是绝对路径。

true
true
true

示例

如果给定的path 不是绝对路径,则Node.js path.isAbsolute() 方法将返回false

在下面的示例中,我们尝试执行给定path 文件将返回false 的所有可能性。

const path = require('path');

var path1 = path.isAbsolute("Users//Lenovo/Desktop/JavaScript/Nodefile.js");
console.log(path1);

var path2 = path.isAbsolute("Users\\Lenovo\Desktop");
console.log(path2);

var path3 = path.isAbsolute(".");
console.log(path3);

var path4 = path.isAbsolute("");
console.log(path4)

输出

从下面的输出中可以看到,该方法返回false,因为给定的文件path 不是绝对路径。

false
false
false
false

示例

如果我们将非字符串类型的值传递给path 参数,则该方法将抛出TypeError

在下面的示例中,我们将一个整数而不是字符串传递给path.isAbsolute() 方法的path 参数。

const path = require('path');
var path1 = path.isAbsolute(98765467);
console.log(path1);

TypeError

如果我们编译并运行上面的程序,此方法会抛出TypeError,因为path 参数不是字符串值。

path.js:39
   throw new ERR_INVALID_ARG_TYPE('path', 'string', path);
   ^

TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type number
   at assertPath (path.js:39:11)
   at Object.isAbsolute (path.js:1146:5)
   at Object.<anonymous> (/home/cg/root/63a028ab0650d/main.js:3:18)
   at Module._compile (internal/modules/cjs/loader.js:702:30)
   at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
   at Module.load (internal/modules/cjs/loader.js:612:32)
   at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
   at Function.Module._load (internal/modules/cjs/loader.js:543:3)
   at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
   at startup (internal/bootstrap/node.js:238:19)
nodejs_path_module.htm
广告