Các path
mô-đun cung cấp rất nhiều chức năng rất hữu ích để truy cập và tương tác với hệ thống tệp.
Không cần phải cài đặt nó. Là một phần của lõi Node.js, nó có thể được sử dụng bằng cách chỉ cần yêu cầu:
JS
const path = require('path')
Mô-đun này cung cấp path.sep
cung cấp dấu phân tách đoạn đường dẫn (\
trên Windows và /
trên Linux / macOS) và path.delimiter
cung cấp dấu phân cách đường dẫn (;
trên Windows và :
trên Linux / macOS).
Đây là những path
phương pháp:
Mục lục
path.basename()
Trả lại phần cuối cùng của đường dẫn. Tham số thứ hai có thể lọc ra phần mở rộng tệp:
JS
require('path').basename('/test/something')
require('path').basename('/test/something.txt')
require('path').basename('/test/something.txt', '.txt')
path.dirname()
Trả lại phần thư mục của đường dẫn:
JS
require('path').dirname('/test/something')
require('path').dirname('/test/something/file.txt')
path.extname()
Trả lại phần mở rộng của đường dẫn
JS
require('path').extname('/test/something')
require('path').extname('/test/something/file.txt')
path.format()
Trả về một chuỗi đường dẫn từ một đối tượng, Điều này ngược lại với path.parse
path.format
chấp nhận một đối tượng làm đối số với các khóa sau:
root
: gốcdir
: đường dẫn thư mục bắt đầu từ thư mục gốcbase
: tên tệp + phần mở rộngname
: tên tệpext
: phần mở rộng tệp
root
bị bỏ qua nếu dir
được cung cấpext
và name
được bỏ qua nếu base
tồn tại
JS
require('path').format({ dir: '/Users/joe', base: 'test.txt' })
require('path').format({ root: '/Users/joe', name: 'test', ext: '.txt' })
require('path').format({ dir: 'C:\\Users\\joe', base: 'test.txt' })
path.isAbsolute()
Trả về true nếu đó là một đường dẫn tuyệt đối
JS
require('path').isAbsolute('/test/something')
require('path').isAbsolute('./test/something')
path.join()
Tham gia hai hoặc nhiều phần của một đường dẫn:
JS
const name = 'joe'
require('path').join('/', 'users', name, 'notes.txt')
path.normalize()
Cố gắng tính toán đường dẫn thực tế khi nó chứa các thông số cụ thể tương đối như .
hoặc ..
hoặc dấu gạch chéo kép:
JS
require('path').normalize('/users/joe/..//test.txt')
path.parse()
Phân tích cú pháp một đường dẫn đến một đối tượng với các phân đoạn tạo nên nó:
root
: gốcdir
: đường dẫn thư mục bắt đầu từ thư mục gốcbase
: tên tệp + phần mở rộngname
: tên tệpext
: phần mở rộng tệp
Ví dụ:
JS
require('path').parse('/users/test.txt')
kết quả trong
JS
{
root: '/',
dir: '/users',
base: 'test.txt',
ext: '.txt',
name: 'test'
}
path.relative()
Chấp nhận 2 đường dẫn làm đối số. Trả về đường dẫn tương đối từ đường dẫn đầu tiên đến đường dẫn thứ hai, dựa trên thư mục làm việc hiện tại.
Ví dụ:
JS
require('path').relative('/Users/joe', '/Users/joe/test.txt')
require('path').relative('/Users/joe', '/Users/joe/something/test.txt')
path.resolve()
Bạn có thể tính toán đường dẫn tuyệt đối của một đường dẫn tương đối bằng cách sử dụng path.resolve()
:
JS
require('path').resolve('joe.txt')
Bằng cách chỉ định một tham số thứ hai, resolve
sẽ sử dụng cái đầu tiên làm cơ sở cho cái thứ hai:
JS
require('path').resolve('tmp', 'joe.txt')
Nếu tham số đầu tiên bắt đầu bằng dấu gạch chéo, điều đó có nghĩa là đó là một đường dẫn tuyệt đối:
JS
require('path').resolve('/etc', 'joe.txt')