Модуль пути к узлу

Модуль path в Node.js предоставляет полезные функции для взаимодействия с путями к файлам.

ВpathМодуль предоставляет множество очень полезных функций для доступа и взаимодействия с файловой системой.

Устанавливать его не нужно. Являясь частью ядра Node, его можно использовать, потребовав от него:

const path = require('path')

Этот модуль предоставляетpath.sepкоторый обеспечивает разделитель сегментов пути (\в Windows и/в Linux / macOS) иpath.delimiterкоторый обеспечивает разделитель пути (;в Windows и:в Linux / macOS).

Этиpathметоды:

path.basename()

Верните последнюю часть пути. Второй параметр может отфильтровать расширение файла:

require('path').basename('/test/something') //something
require('path').basename('/test/something.txt') //something.txt
require('path').basename('/test/something.txt', '.txt') //something

path.dirname()

Вернуть директорию часть пути:

require('path').dirname('/test/something') // /test
require('path').dirname('/test/something/file.txt') // /test/something

path.extname()

Вернуть расширенную часть пути

require('path').extname('/test/something') // ''
require('path').extname('/test/something/file.txt') // '.txt'

path.isAbsolute()

Возвращает истину, если это абсолютный путь

require('path').isAbsolute('/test/something') // true
require('path').isAbsolute('./test/something') // false

path.join()

Соединяет две или более частей пути:

const name = 'flavio'
require('path').join('/', 'users', name, 'notes.txt') //'/users/flavio/notes.txt'

path.normalize()

Пытается вычислить фактический путь, если он содержит относительные спецификаторы, такие как.или же.., или двойные косые черты:

require('path').normalize('/users/flavio/..//test.txt') ///users/test.txt

path.parse()

Анализирует путь к объекту с сегментами, которые его составляют:

  • root: корень
  • dir: путь к папке, начиная с корня
  • base: имя файла + расширение
  • name: имя файла
  • ext: расширение файла

Пример:

require('path').parse('/users/test.txt')

приводит к

{
  root: '/',
  dir: '/users',
  base: 'test.txt',
  ext: '.txt',
  name: 'test'
}

path.relative()

Принимает 2 пути в качестве аргументов. Возвращает относительный путь от первого пути ко второму на основе текущего рабочего каталога.

Пример:

require('path').relative('/Users/flavio', '/Users/flavio/test.txt') //'test.txt'
require('path').relative('/Users/flavio', '/Users/flavio/something/test.txt') //'something/test.txt'

path.resolve()

Вы можете получить вычисление абсолютного пути относительного пути, используяpath.resolve():

path.resolve('flavio.txt') //'/Users/flavio/flavio.txt' if run from my home folder

Указав второй параметр,resolveбудет использовать первое как основу для второго:

path.resolve('tmp', 'flavio.txt')//'/Users/flavio/tmp/flavio.txt' if run from my home folder

Если первый параметр начинается с косой черты, это означает, что это абсолютный путь:

path.resolve('/etc', 'flavio.txt')//'/etc/flavio.txt'

Скачать мою бесплатнуюСправочник по Node.js


Дополнительные руководства по узлам: