node基礎學習——path的處理與路徑轉換
處理與轉換路徑path
- normalize該方法將非標準路徑字符串轉換為標準路徑字符串,在轉換過程中執行以下操作:
①解析路徑字符串中的’..’字符串與’.’字符串,返回解析後的標準路徑。
②將多個斜杠字符串轉換為一個斜杠字符串,例如將’\\’轉換為’\’。
③將windows操作系統中的反斜杠字符串轉換為正斜杠字符串。
④如果路徑字符串以斜杠字符串結尾,則在轉換後的完整路徑字符串末尾保留該斜杠字符串。
Path.normalize?
參數:參數值為需要被轉換的路徑字符串,該方法返回轉換後的路徑字符串。
2. join 該方法將對參數值字符串結合為一個路徑字符串
Path.join([path1],[path2],[…])
3. resolve 該方法一應用程序根目錄為起點,根據所有的參數值字符串解析出一個絕對路徑。
Path.resolve([path1],[path2],[…])
①以應用程序根目錄為起點,解析第一個參數值字符串
②如果該參數值字符串不以’..’ , ’.’ , ’/’開頭,則將參數值字符串解析為應用程序根目錄下的某個子目錄,將當前參考目錄定為該子目錄的絕對路徑。
③如果該參數值字符串以’..’ 開頭,則將’..’ 解析為應用程序根目錄(文件所在的目錄)的上級目錄,然後將’..’ 後的字符串解析為該目錄下的某個子目錄,將當前參考目錄定為該子目錄的絕對路徑。
④如果該參數值字符串以’.’ 開頭,則將’.’ 解析為應用程序根目錄(文件所在的目錄)的當前目錄,即應用程序根目錄,然後將’.’ 後的字符串解析為應用程序根目錄下的某個子目錄,將當前參考目錄定為該子目錄的絕對路徑。
⑤如果該參數值字符串以’/’ 開頭,表示指定了一個絕對路徑,則將當前參考目錄定為該絕對路徑。
⑥如果沒有下一個參數值字符串,則resolve方法返回當前參考目錄的絕對路徑。
⑦如果存在下一個參數值字符串,則以當前參考目錄為起點,解析下一個參數值字符串。
4. relative方法
該方法用於獲取兩個路徑之間的相對關系,path.relative(from,to)
參數:兩個參數均為一個路徑,該路徑可以為相對路徑,也可以為絕對路徑,可以為一個文件的路徑,也可以為一個目錄的路徑。
5. dirname方法用於獲取一個路徑中目錄名。
Path.dirname(p)
6. basename方法,用於獲取一個路徑中的文件名。
Path.basename(p,[ext])
參數:p參數必須為一個文件的完整路徑,可以為相對路徑,也可以為絕對路徑。ext參數值用於在方法返回的文件名中去除該文件的擴展名,因此該參數值必須等於p參數值中指定文件的擴展名(以’.’ 開始),否則不能去除該擴展名。該方法返回p參數值中指定文件的文件名,當ext參數被指定後,該文件中不包含文件擴展名。
7. Extname 獲取一個路徑中的擴展名
Path.extname(p)
8. Path.parse(url) 路徑解析
Path.parse(url)例子如下:
解析的結果是一個對象,對象中重點是ext屬性,可以用來判斷文件格式。
9. Path.format({})作用與path.parse(url)相反,把解析的對象還原成原來的url地址。
10. Path.isAbsolute(path)用於判斷是不是一個絕對路徑。是返回true,否false。
node基礎學習——path的處理與路徑轉換