- 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)
