-
<Node.js> __dirname 이해하고 가기액티브 스킬/노드 2021. 12. 19. 00:05728x90
🚀
{ __dirname }
무엇인가요?
"__"는 자바스크립트에서 기본적으로 정의된 변수에 붙습니다.
"dirname"은 directory와 name의 합성어입니다.
현재의 파일(file)이 위치한 폴더(directory)의 절대경로(absolute path)를 알려줍니다.
cf) process.cwd()는 항상 프로젝트 폴더(directory)를 반환합니다.
cf) __filename은 현재 파일명을 알려줍니다.
어떻게 사용하나요?
__dirname는 환경 변수(environment variable)로써 따로 정의할 필요없이 사용할 수 있습니다.
// index.js console.log(`process.cwd(): ${process.cwd()}`); console.log(`__dirname: ${__dirname}`); console.log(`__filename: ${__filename}`);
// 콘솔 출력 결과 process.cwd(): C:\...\[projectName] __dirname: C:\...\[projectName]\src __filename: C:\...\[projectName]\src\[fileName]
왜 사용하나요?
1. 새 폴더(directory)를 만들기 위해 사용합니다.
const fs = require("fs"); const path = require("path"); const dirPath = path.join(__dirname, "/pictures"); fs.mkdirSync(dirPath);
현재 파일(file)과 같은 폴더(directory) 내에 "pictures"라는 새로운 폴더(directory)를 만듭니다.
2. 특정 폴더(directory)를 지정하기 위해 사용합니다.
express.static(path.join(__dirname, '/public'));
정적 파일(static file)들을 포함하는 폴더(directory)를 특정하여 노드에서 활용할 수 있습니다.
📌
https://www.digitalocean.com/community/tutorials/nodejs-how-to-use__dirname
How To Use __dirname in Node.js | DigitalOcean
__dirname is an environment variable that tells you the absolute path of the directory containing the currently executing file. In this article, you will explore how to implement __dirname in your Node.js project.
www.digitalocean.com
728x90'액티브 스킬 > 노드' 카테고리의 다른 글
<Node.js> 쿠키-세션 (0) 2022.03.15 <Node.js> express.urlencoded가 필요한 이유 (0) 2022.03.02 <Node.js> TypeError: expressHandlebars is not a function (0) 2021.12.11 <Node.js> multer middleware (0) 2021.12.02 <Node.js> Express (Routes, Controllers, URL parameter) (0) 2021.11.07