Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임.
Chrome V8 JavaScript 엔진 ➡ ECMAScript
자바스크립트 언어 해석기
1. 브라우저 포함된 해석기 ➡ html
2. JavaScript 런타임 ➡ Js => Java와 유사하게 처리
Node.js 로 할수 있는 것
1. Window Application ➡ Java
2. Web Application ➡ JSP
Ubuntu 에 설치하기
sudo apt-get -y install curl
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
node --version
혹은?
node -v
node.js 의 실행 환경이 설치된 것을 확인할 수 있다.
JavaScript 기본문법과 동일하다.
Node.js를 배운다는 것은? ➡ 라이브러리를 배우는 것.
무엇이 추가가 되었나? 보는 것.
라이브러리? : 공식 문서
아직까지는 export / import를 주로 사용한다.
const odd = '홀수입니다';
const even = '짝수입니다';
module.exports = {odd, even};
const data = require('./export');
console.log(data);
console.log(data.odd);
console.log(data.even);
"use strict";
console.log('Hello NodeJS');
// , = ' '
console.log('1', '2', '3');
global.console.log('1', '2', '3');
console.log('기본 출력');
console.info('출력 1');
console.warn('출력 2');
console.error('출력 3');
"use strict";
const obj = {
depth1: {
depth2: {
depth3: {
key1 : 'value1',
key2 : 'value2'
}
}
}
}
console.log(obj);
console.dir(obj);
console.dir(obj, {depth: 1});
"use strict";
console.log('시작');
console.time('time1');
for(let i=0; i<100000; i++) {
}
console.timeEnd('time1');
console.log('종료');
"use strict";
//let os = require('os');
let os;
try {
os = require('os');
console.log(os);
} catch(err) {
console.log('[에러] ');
}
"use strict";
const os = require('os');
console.log(os.arch());
console.log(os.platform());
console.log(os.type());
console.log(os.release());
console.log(os.uptime());
console.log(os.homedir());
console.log(os.tmpdir());
console.log(os.totalmem());
console.log(os.freemem());
"use strict";
console.log(__dirname);
console.log(__filename);
"use strict";
console.log(process.version);
console.log(process.arch);
console.log(process.platform);
console.log(process.cpuUsage());
console.log(process.execPath);
console.log(process.cwd());
"use strict";
//console.log(process.env);
//console.log(process.argv);
//console.log(process.argv[2]);
//console.log(process.argv[3]);
for(let i=2; i<process.argv.length; i++) {
//console.log(process.argv[i]);
}
process.argv.forEach(function(val) {
//console.log(val);
});
"use strict";
let i = 1;
console.log('시작');
setInterval(function() {
if(i == 5) {
console.log('강제 종료!!');
// 프로그램 종료
process.exit();
}
console.log(i)
i ++;
}, 1500);
console.log('종료');
"use strict";
console.log('시작');
const timeout = setTimeout(function() {
console.log('1.5초 후 실행');
}, 1500);
console.log('종료');
"use strict";
const util = require('util');
const dontUseMe = util.deprecate(function(x, y) {
console.log('결과', x + y);
}, '2023년 12월 까지만 지원됨');
dontUseMe(1, 2);
const str1 = util.format('%d + %d = %d', 1, 2, (1+2));
console.log(str1);