xMagic- 仓湖云函数数字应用平台
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
  1. xScript - x16.25.11
  • xMagic - 仓湖云函数数字应用平台
  • xScript - 仓湖云函数数字应用引擎
  • xMagic - 二开应用场景案例
  • 数据应用
    • 消息订阅(WSS)
    • 消息订阅(SSE)
    • 用户信息
    • 免密登陆(短信)
  • xScript - x16.25.11
    • assert
    • buffer
    • color
    • compress
    • console
    • crontab
    • crypto
    • encoding
    • events
    • evenloop
    • esm
    • fetch
    • fs
    • image
    • kv
    • mail
    • ml
    • mqtt
    • multipart
    • net
    • os
    • path
    • process
    • protobuf
    • querystring
    • redis
    • request
    • require
    • sql
    • tty
    • tui
    • ua
    • url
    • util
    • websocket
    • xml
    • yaml
    • mongo
    • http
    • stream
    • runtime
  • 小工具
    • APS - 代理转发
      • Any Proxy Service - 高级 HTTP/HTTPS/gRPC 代理转发工具
      • 配置指南 - 双向 Headers 和 Match/Replace
  • 数据模型
    • Schemas
      • AdminChangeAvatarReq
      • casbin.CasbinRule
      • AdminDelBatchReq
      • entity.DeptLable
      • AdminDelReq
      • entity.DevGenTable
      • AdminListReq
      • entity.DevGenTableColumn
      • AdminLoginReq
      • entity.FlowWorkClassify
      • AdminPostReq
      • entity.FlowWorkInfo
      • AdminReply
      • entity.FlowWorkTemplates
      • AdminUpdatePwdReq
      • entity.LogLogin
      • MenuDelBatchReq
      • entity.LogOper
      • MenuDelReq
      • entity.LoginM
      • MenuListReq
      • entity.MenuLable
      • MenuPostReq
      • entity.MenuPath
      • MenuReply
      • entity.ResEmail
      • RoleApisReq
      • entity.ResOss
      • SystemApiDelBatchReq
      • entity.ScreenGroupLabel
      • SystemApiDelReq
      • entity.SysApi
      • SystemApiListReq
      • entity.SysConfig
      • SystemApiPostReq
      • entity.SysDept
      • SystemApiReply
      • entity.SysDictData
      • SystemDepartmentDelBatchReq
      • entity.SysDictType
      • SystemDepartmentDelReq
      • entity.SysJob
      • SystemDepartmentListReq
      • entity.SysMenu
      • SystemDepartmentPostReq
      • entity.SysNotice
      • SystemDepartmentReply
      • entity.SysPost
      • SystemRoleApiDelBatchReq
      • entity.SysRole
      • SystemRoleApiDelReq
      • entity.SysTenants
      • SystemRoleApiListReq
      • entity.SysUser
      • SystemRoleApiPostReq
      • entity.SysUserB
      • SystemRoleApiReply
      • entity.SysUserId
      • SystemRoleDelBatchReq
      • entity.SysUserView
      • SystemRoleDelReq
      • entity.VisualRuleChain
      • SystemRoleListReq
      • entity.VisualScreen
      • SystemRoleMenuAddReq
      • entity.VisualScreenGroup
      • SystemRoleMenuDelBatchReq
      • form.Login
      • SystemRoleMenuDelReq
      • from.SendMail
      • SystemRoleMenuListReq
      • map[string]interface {}
      • SystemRoleMenuPostReq
      • map[string]string
      • SystemRoleMenuReply
      • model.BaseAutoModel
      • SystemRolePostReq
      • model.BaseModel
      • SystemRoleReply
      • model.ResultPage
      • model.ResultPage.data
      • vo.AuthVo
      • vo.DeptTreeVo
      • vo.MenuTreeVo
      • vo.MetaVo
      • vo.RouterVo
      • vo.TableInfoVo
      • vo.TokenVo
      • vo.UserRolePost
      • vo.UserVo
      • vo.UserVo.data
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
  1. xScript - x16.25.11

path

Path 模块#

Node.js 兼容的路径处理模块,提供跨平台的文件路径操作功能。

功能特性#

✅ Node.js 完全兼容 - 实现 Node.js path 模块的所有标准 API
✅ 跨平台支持 - 自动适配 Windows 和 POSIX 系统
✅ 路径规范化 - 清理和标准化路径
✅ 路径解析 - 解析路径为组成部分
✅ 路径拼接 - 安全地连接多个路径段
✅ 绝对路径解析 - 将相对路径转换为绝对路径

基本使用#

API 参考#

path.sep#

路径分隔符常量。
Windows: '\\'
POSIX: '/'
示例:

path.delimiter#

环境变量路径分隔符。
Windows: ';'
POSIX: ':'
示例:

path.basename(p[, ext])#

返回路径的最后一部分(文件名)。
参数:
p (string): 文件路径
ext (string, 可选): 要移除的文件扩展名
返回值: string - 文件名
示例:

path.dirname(p)#

返回路径的目录部分。
参数:
p (string): 文件路径
返回值: string - 目录路径
示例:

path.extname(p)#

返回路径的扩展名。
参数:
p (string): 文件路径
返回值: string - 扩展名(包含点号),如果没有扩展名则返回空字符串
示例:

path.join([...paths])#

将多个路径段连接成一个路径。
参数:
...paths (string): 要连接的路径段
返回值: string - 连接后的路径
示例:

path.normalize(p)#

规范化路径,解析 .. 和 . 段。
参数:
p (string): 要规范化的路径
返回值: string - 规范化后的路径
示例:

path.resolve([...paths])#

将路径段解析为绝对路径。
参数:
...paths (string): 路径段序列
返回值: string - 解析后的绝对路径
示例:

path.isAbsolute(p)#

判断路径是否为绝对路径。
参数:
p (string): 要检查的路径
返回值: boolean - 如果是绝对路径返回 true
示例:

path.parse(p)#

解析路径为对象。
参数:
p (string): 要解析的路径
返回值: object - 包含路径组成部分的对象
root (string): 根路径
dir (string): 目录路径
base (string): 文件名(包含扩展名)
ext (string): 扩展名
name (string): 文件名(不包含扩展名)
示例:

path.format(pathObject)#

从对象构造路径字符串(parse 的反操作)。
参数:
pathObject (object): 路径对象
root (string): 根路径
dir (string): 目录路径
base (string): 文件名
ext (string): 扩展名
name (string): 文件名(不包含扩展名)
返回值: string - 构造的路径
优先级:
如果提供了 dir,则忽略 root
如果提供了 base,则忽略 name 和 ext
示例:

实际应用场景#

构建文件路径#

获取配置文件路径#

解析导入路径#

文件类型检查#

生成输出路径#

相对路径转绝对路径#

跨平台注意事项#

Windows vs POSIX#

避免硬编码路径分隔符#

性能优化#

常见错误和解决方案#

错误 1: 混用不同平台的路径分隔符#

错误 2: 拼接路径时丢失根路径#

错误 3: 未处理相对路径#

Node.js 兼容性#

xScript 的 path 模块完全兼容 Node.js,所有 API 行为与 Node.js 保持一致:
✅ 所有标准 API 完全实现
✅ 跨平台行为一致
✅ 错误处理兼容
✅ 边界情况处理一致
可以直接迁移 Node.js 代码到 xScript 而无需修改。

最佳实践#

1.
始终使用 path 模块处理路径 - 避免手动拼接路径字符串
2.
使用 path.join 连接路径 - 自动处理平台差异
3.
使用 path.resolve 获取绝对路径 - 避免相对路径问题
4.
缓存常用路径 - 提高性能
5.
使用 path.normalize 清理路径 - 消除冗余的 .. 和 .
6.
检查路径类型 - 使用 path.isAbsolute 区分绝对和相对路径

总结#

path 模块是处理文件路径的核心工具,提供了:
跨平台的路径操作
安全的路径拼接
修改于 2025-11-05 07:28:41
上一页
os
下一页
process
Built with