Node.js는 구글의 V8엔진을 사용한 자바스크립트 언어 중 하나이다. 다만 웹 브라우저에서 동작하는 자바스크립트는 html을 다루기 위해 DOM객체를 지원하지만, Node.js는 웹 브라우저가 목적이 아니라서 document같은 객체는 동작하지 않는다.
Node.js를 쓰기 위해서는 여러 과정이 필요하다. 우선 Node.js 홈페이지에 들어가서 Node.js파일을 다운 받는다.
그 다음 터미널에서 원하는 프로젝트에 들어간 후, 다음 명령어를 실행한다.
npm init
그러면 json 파일이 생성되면서, 그 폴더는 Node.js작업 폴더가 된다.
기본적인 문법은 이전에 다룬 웹 js랑 같다.(var, let, for 등등) 따라서 모듈을 위주로 설명하겠다.
그러나 Node.js는 require나 import로 npm 라이브러리를 불러올 수 있다.
inmport fs from 'fs';
const fs = require('fs');
둘 중 하나를 쓰면 fs모듈을 불러올 수 있다.
fs모듈
파일 읽기, 쓰기, 디렉토리 읽기 등 파일과 폴더를 사용하는 라이브러리이다.
파일 읽기
fs.readFile(path, encoding, (err, data) => {
if (err) throw err;
console.log(data);
})
파일 쓰기
fs.writeFile(path, data, (err) => {
if (err) throw err;
})
디렉토리 읽기
fs.readdir(path, (err, files) => {
if (err) throw err;
files.forEach(file => {
console.log(file);
})
})
디렉토리 만들기
fs.mkdir(path, (err) => {
if (err) throw err;
}
이 외에도 파일과 폴더에 관해서 여러가지 작업을 할 수 있다.
path모듈
fs는 직접적으로 파일에 접근했다면, path는 경로를 처리하고 가져오는데 초점을 맞춘 모듈이다. 현재 실행 경로, 경로에서 파일 이름 추출, 확장자 추출, 디렉토리 추출등을 할 수 있다.
경로에서 디렉토리 추출 (예 : path가 ./a/f.txt라면 ./a)
path.dirname(path);
경로에서 파일 이름 추출(확장자 포함, 예 : path가 ./a/f.txt라면 f.txt)
path.basename(path);
경로에서 파일 확장자 추출(예 : path가 ./a/f.txt라면 txt)
path.extname(path);
이 외에도 다양한 기능이 있다.
os모듈
운영체제의 정보를 가져오는데 사용하는 모듈이다.
(메소드가 너무 많으므로 하나로 정리하겠다)
os.type() // 운영체제 이름
os.platform() // 운영체제 플랫폼
os.release() // 운영체제 릴리즈
os.uptime() // 운영체제 업타임(켜져 있는 시간)
os.freemem() // 사용가능한 메모리
os.totalmem() // 전체 메모리
os.cpus() // cpu 정보(배열로 리턴)
os.arch() // cpu 아키텍처
os.hostname() // 호스트 이름
그 외에도 crypto모듈과 http모듈이 있으며, 각각 암호화, 웹 통신의 기능이 있다.
'HTML, CSS, JS, 웹, 네트워크' 카테고리의 다른 글
| Express(Cookie, Session) (0) | 2025.07.07 |
|---|---|
| Express, pug (0) | 2025.06.23 |
| API (0) | 2025.06.09 |
| JSON, XML (2) | 2025.06.09 |
| DNS (0) | 2025.06.02 |