node.js中path
阿新 • • 發佈:2018-12-12
path
模組提供了一些工具函式,用於處理檔案與目錄的路徑。可以通過以下方式使用:
const path = require('path');
1、 path.join([...paths])
path.join()
方法使用平臺特定的分隔符把全部給定的 path
片段連線到一起,並規範化生成的路徑。
長度為零的 path
片段會被忽略。 如果連線後的路徑字串是一個長度為零的字串,則返回 '.'
,表示當前工作目錄。
例子:
path.join('/foo', 'bar', 'baz/asdf', 'quux', '..'); // 返回: '/foo/bar/baz/asdf' path.join('foo', {}, 'bar'); // 丟擲 'TypeError: Path must be a string. Received {}'
如果任一路徑片段不是一個字串,則丟擲 TypeError
。
2、path.resolve([...paths])
path.resolve()
方法會把一個路徑或路徑片段的序列解析為一個絕對路徑。
給定的路徑的序列是從右往左被處理的,後面每個 path
被依次解析,直到構造完成一個絕對路徑。 例如,給定的路徑片段的序列為:/foo
、/bar
、baz
,則呼叫 path.resolve('/foo', '/bar', 'baz')
會返回 /bar/baz
。
如果處理完全部給定的 path
片段後還未生成一個絕對路徑,則當前工作目錄會被用上。
生成的路徑是規範化後的,且末尾的斜槓會被刪除,除非路徑被解析為根目錄。
長度為零的 path
片段會被忽略。
如果沒有傳入 path
片段,則 path.resolve()
會返回當前工作目錄的絕對路徑。
例子:
path.resolve('/foo/bar', './baz'); // 返回: '/foo/bar/baz' path.resolve('/foo/bar', '/tmp/file/'); // 返回: '/tmp/file' path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif'); // 如果當前工作目錄為 /home/myself/node, // 則返回 '/home/myself/node/wwwroot/static_files/gif/image.gif'
如果任何引數不是一個字串,則丟擲 TypeError
。