기억 휘발 방지소

[Node.js] path, __dirname, __filename 본문

Web/Node.js

[Node.js] path, __dirname, __filename

choice91 2021. 9. 9. 18:23
728x90
반응형

path모듈

path모듈은 운영체제별로 경로 구분자가 달라 생기는 문제를 쉽게 해결하기 위해 등장했다.

크게 Windows와 POSIX로 나눌 수 있는데 POSIX에는 maxOS와 Linux가 있다.

 

  • Windows는 C:\Users\user 처럼 '\'로 구분을 하고
  • POSIX는 /Users/user 처럼 '/'로 구분을 한다.

path모듈은 별도의 설치 없이 불러와서 사용할 수 있다.

const path = require('path');

 

path.join([...paths])

path.join은 paths 인자들을 받아서 합쳐준다. paths는 항상 string이어야한다.

console.log(path.join('/a', 'b', 'c'));  
// \a\b\c

 

path.basename(path);

파일명을 반환한다.

const path = require('path');

console.log(path.basename(__filename));
// app.js

 

path.dirname(path);

디렉토리 주소를 반환한다.

const path = require('path');

console.log(path.dirname(__filename));
// D:\workspace\web\Node.js

 

path.extname(path);

파일 확장자명을 반환한다.

const path = require('path');

console.log(path.extname(__filename));
// .js

 

__dirname, __filename

  • __dirname은 현재 디렉토리 경로이고
  • __filename은 현재 파일의 경로이다.
console.log(__dirname);  // D:\workspace\web\Node.js
console.log(__filename);  // D:\workspace\web\Node.js\play.js

 

path.join과 합쳐서 사용할 수도 있다.

const path = require('path');

console.log(__dirname);  // D:\workspace\web\Node.js

const filePath = path.join(__dirname, 'public');
console.log(filePath);  // D:\workspace\web\Node.js\public

 

728x90
반응형

'Web > Node.js' 카테고리의 다른 글

[Node.js] express.static  (0) 2021.09.09
[Node.js] Express  (0) 2021.09.09
[Node.js] fs 모듈  (0) 2021.09.06
[Node.js] morgan  (0) 2021.09.06
[Node.js] REPL  (0) 2021.09.01