Mô-đun đường dẫn Node.js

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:

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ốc
  • dir: đường dẫn thư mục bắt đầu từ thư mục gốc
  • base: tên tệp + phần mở rộng
  • name: tên tệp
  • ext: phần mở rộng tệp

root bị bỏ qua nếu dir được cung cấp
extname đượ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ốc
  • dir: đường dẫn thư mục bắt đầu từ thư mục gốc
  • base: tên tệp + phần mở rộng
  • name: tên tệp
  • ext: 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')

Trả lời