- Node.js 教程
- Node.js - 首页
- Node.js - 简介
- Node.js - 环境搭建
- Node.js - 第一个应用程序
- Node.js - REPL 终端
- Node.js - 命令行选项
- Node.js - 包管理器 (NPM)
- Node.js - 回调函数概念
- Node.js - 上传文件
- Node.js - 发送邮件
- Node.js - 事件
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 调试器
- Node.js - 全局对象
- Node.js - 控制台
- Node.js - 进程
- Node.js - 应用程序扩展
- Node.js - 打包
- Node.js - Express 框架
- Node.js - RESTful API
- Node.js - 缓冲区
- Node.js - 流
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL 入门
- Node.js - MySQL 创建数据库
- Node.js - MySQL 创建表
- Node.js - MySQL 插入数据
- Node.js - MySQL 从表中选择数据
- Node.js - MySQL Where 条件
- Node.js - MySQL 排序
- Node.js - MySQL 删除数据
- Node.js - MySQL 更新数据
- Node.js - MySQL 联接
- Node.js MongoDB
- Node.js - MongoDB 入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB 插入数据
- Node.js - MongoDB 查找数据
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB 删除数据
- Node.js - MongoDB 更新数据
- Node.js - MongoDB 限制结果
- Node.js - MongoDB 联接
- Node.js 模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - 实用程序模块
- Node.js - Web 模块
- Node.js 有用资源
- Node.js - 快速指南
- Node.js - 有用资源
- Node.js - 讨论
Node.js - path.join() 方法
Node.js 的 path.join() 方法属于 path 模块,它接受一系列的 字符串路径片段。该方法会使用平台分隔符将所有给定的 字符串路径片段连接在一起,然后规范化完整的路径。
长度为零的路径片段将被忽略。如果连接后的 路径字符串长度为零,则会打印“.”。如果任何路径片段不是 字符串值,则会抛出 TypeError。
语法
以下是 path 模块中 Node.js path.join() 方法的语法:
path.join([...paths])
参数
...paths − 此参数包含用逗号分隔的一系列路径片段。
返回值
此方法通过连接 ...paths 参数中给定的所有 字符串路径片段,返回一个完整的 字符串路径。
以下示例演示了 path 模块中 path.join() 方法的使用。
示例
path.join() 方法以一系列 字符串路径片段作为输入,并输出一个完整的 字符串路径。
在下面的示例中,我们将一系列 字符串路径片段传递给 path.join() 方法。
const path = require('path');
var result = path.join('Users', 'Node.js', 'API', 'Path module');
console.log(result);
输出
如果我们编译并运行上述程序,此方法会将所有给定的路径片段使用平台特定的分隔符作为分隔符连接在一起,并打印完整的路径。
Users/Node.js/API/Path module
示例
path.join() 方法接受一系列 字符串路径片段,并将其作为完整的 字符串路径返回。
在以下示例中,我们尝试将一个 字符串路径片段 ("Nodefile.js") 与当前工作目录连接起来。我们可以使用 '__dirname' 属性获取当前工作目录。
const path = require('path');
var result = path.join(__dirname, "Nodefile.js");
console.log('Current working directory: ' + __dirname);
console.log("After the joining a segment: " + result);
输出
在在线编译器 (POSIX) 中执行上述程序后,此方法会将 字符串路径片段 ("Nodefile.js") 与当前工作目录连接起来。
Current working directory: /home/cg/root/63a028ab0650d After the joining a segment: /home/cg/root/63a028ab0650d/Nodefile.js
以下是在 Windows 操作系统上执行上述代码时的输出。
Current working directory: C:\Users\Lenovo\Desktop\JavaScript After the joining a segment: C:\Users\Lenovo\Desktop\JavaScript\Nodefile.js
示例
如果我们将不是 字符串类型的值传递给 …paths 参数,则该方法将抛出 TypeError。
在以下示例中,我们将一个对象而不是字符串传递给 path.isAbsolute() 方法的 …paths 参数。
const path = require('path');
var result = path.join({});
console.log( result);
输出
正如我们在下面的输出中看到的,path.isAbsolute() 方法抛出了 TypeError,因为 …paths 参数不是字符串值。
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 object
at assertPath (path.js:39:11)
at Object.join (path.js:1157:7)
at Object.<anonymous> (/home/cg/root/63a028ab0650d/main.js:3:19)
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)
