- 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.parse() 方法
Node.js 的 path.parse() 方法是 path 模块的一部分,它将给定路径的属性列为一个对象。以下是表示给定路径的对象属性。
dir − 此属性指定给定路径的目录名称。
root − 此属性指定给定路径的根名称。
base − 此属性指定给定路径的文件名及其扩展名。
name − 此属性指定给定路径的文件名。
ext − 此属性仅指定给定路径的扩展名。
对于不同的平台(例如 POSIX),返回的对象属性的值可能会有所不同。此方法忽略尾随目录分隔符。
语法
以下是 path 模块的 Node.js path.parse() 方法的语法。
path.parse(path)
参数
path − 此参数指定将由方法解析的路径。如果 path 不是 字符串,则会抛出 TypeError。
返回值
此方法返回一个包含属性的对象,这些属性指定给定路径的各个部分。
示例
如果将完全规范化的 path 传递给此方法,则表示给定路径的所有属性都将作为 对象 返回。
在以下示例中,我们向方法提供所有属性,包括 'root'、'dir'、'base'、'ext' 和 'name'。
const path = require('path'); var result = path.parse("C:/Users/Lenovo/Desktop/JavaScript/nodefile.js"); console.log(result);
输出
在在线编译器 (POSIX) 中执行上述程序后,该方法将所有路径属性作为对象返回。
{ root: '', dir: 'C:/Users/Lenovo/Desktop/JavaScript', base: 'nodefile.js', ext: '.js', name: 'nodefile' }
以下是我们在 WINDOWS 操作系统上执行上述代码时的输出。
{ root: 'C:/', dir: 'C:/Users/Lenovo/Desktop/JavaScript', base: 'nodefile.js', ext: '.js', name: 'nodefile' }
示例
如果向此方法传递空 path,则返回的对象的属性将为空。
在以下示例中,我们向 path.parse() 方法传递一个空 path。
const path = require('path'); var result = path.parse(""); console.log(result);
输出
执行上述程序后,path.parse() 方法返回空对象属性。
{ root: '', dir: '', base: '', ext: '', name: '' }
示例
如果未向此方法提供 path 的任何 path 部分,则返回的对象的该特定 path 部分属性将为空。
在给定的程序中,我们尝试传递没有 根部分 的 path。
const path = require('path'); var result = path.parse("JavaScript/nodefile.js"); console.log(result);
输出
如果我们编译并运行上述程序,则该方法将 'root' 属性返回为空,因为在给定的路径中没有提供 'root' 部分。
{ root: '', dir: 'JavaScript', base: 'nodefile.js', ext: '.js', name: 'nodefile' }
示例
如果我们向 path 参数传递不是 字符串 类型的值,则此方法将抛出 TypeError。
在给定的示例中,我们向方法的 path 参数传递了一个对象的实例,而不是一个 字符串。
const path = require('path'); var result = path.parse({}); console.log(result);
TypeError
执行上述程序后,path.isAbsolute() 方法抛出 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 object at assertPath (path.js:39:11) at Object.parse (path.js:1436:5) at Object.<anonymous> (/home/cg/root/63a02f1595a95/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)