Node.js는 JavaScript의 Runtime 이다.
Node.js는 언어가 아니다.
Node.js의 기본 베이스 언어는 JavaScript이다.
라이브러리(모듈)의 사용법은?
exports / require(import)
Event DOCS : Process
"use strict";
// require로 받을 수 있는 것 : 변수 / 함수 / 클래스
const EventEmitter = require('events');
const myEmitter = new EventEmitter();
// 이벤트 등록
myEmitter.addListener('event1', function() {
console.log('이벤트 1 발생');
});
// 이벤트 발생
myEmitter.emit('event1');
"use strict";
process.on('exit', () => {
console.log('system exit');
});
if(process.argv.length != 3) {
console.log('[Error]', '1 개를 입력하십시오');
process.exit();
} else {
console.log('정상');
}
DOCS : Readline
명령 줄에서 값을 읽어들일 수 있다.
"use strict";
const readlilne = require('readline');
const rl = readlilne.createInterface({
input: process.stdin,
output: process.stdout
});
rl.setPrompt('입력 > ');
rl.prompt();
rl.on('line', msg => {
if(msg == 'exit') {
rl.close();
}
console.log('msg : ', msg);
//rl.close();
rl.prompt();
}).on('close', () => {
process.exit();
});
on() 내부에 prompt()를 사용하면 반복문의 성향을 가지게 된다.
DOCS - File system
경로를 다루는 법
"use strict";
const fs = require('fs');
console.log('시작');
//if(fs.accessSync('./event01.js', fs.constants.F_OK)) {
// console.log('파일 있음');
//}
try {
fs.accessSync('./event04.js', fs.constants.F_OK);
console.log('파일 있음');
} catch(err) {
console.log('[Error]', err.message);
}
console.log('종료');
디렉토리 생성과 삭제