請參閱以下示例path.format():
require('path').format({ root: '/Users/joe', name: 'test', ext: 'txt' }) // '/Users/joe/test.txt'
這個例子寫在nodejs.dev中,據說輸出如下:
/Users/joe/test.txt
但是我在Linux和Windows上都測驗過這段代碼,但是結果如下:
/Users/joetesttxt
這種差異的原因是什么?
這個網站的例子有錯嗎?
uj5u.com熱心網友回復:
顯示的示例適用于 POSIX,而 Windows 和 Linux 有不同的方法(因為檔案結構不同)。
如果我們使用相反的函式parse,并轉換C:\\Users\\joe\\test.txt為我們需要在 中使用的物件,我們會format得到。
path.parse('C:\\Users\\joe\\test.txt')
// returns
{
root: 'C:\\',
dir: 'C:\\Users\\joe',
base: 'test.txt',
ext: '.txt',
name: 'test'
}
因此,這提供了一個示例,說明您需要format為 Windows提供什么。
如果我們在 Linux 中做同樣的事情,我們就會得到。
path.parse('/home/joe/test.txt')
{
root: '/',
dir: '/home/joe',
base: 'test.txt',
ext: '.txt',
name: 'test'
}
然而,我們可以省略root和,base因為它們分別在dir和中表示name ext。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/339484.html
下一篇:在JS中獲取“檔案未定義”
