글 작성자: 써니루루






참고 블로그: 

- http://ourcstory.tistory.com/66?category=664896



var http = require('http');

http.createServer(function handler(req, res) {

    res.writeHead(200, {'Content-Type': 'text/html'});

    res.end('<b>Hello World</b>\n');

}).listen(1337, '127.0.0.1');

console.log('Server running at http://127.0.0.1:1337/');


/* OS 관련 테스트 */

var os = require('os');

console.log(os.hostname());

console.log(os.type());

console.log(os.platform());

//console.log(os.cpus());

//console.log(os.networkInterfaces());

//console.log(os.freemem());

//console.log(os.loadavg());

//console.log(os.uptime());



/* url 관련 테스트 */

var url = require('url');

var urlStr = 'https://nodejs.org/dist/latest-v4.x/docs/api/';

var urlObj = url.parse(urlStr);

console.log(urlObj);

/*

Url {

protocol: 'https:',

slashes: true,

auth: null,

host: 'nodejs.org',

port: null,

hostname: 'nodejs.org',

hash: null,

search: null,

query: null,

pathname: '/dist/latest-v4.x/docs/api/',

path: '/dist/latest-v4.x/docs/api/',

href: 'https://nodejs.org/dist/latest-v4.x/docs/api/' }

*/



/* Command 입출력 테스트 */

var util = require('util');

var data = util.format('%d + %d = %d', 52, 23, 52+23);

console.log(data);


var readline = require('readline');


var r = readline.createInterface({

input:process.stdin,

output:process.stdout

});


r.question("Do you like banana?", function(answer){

console.log("Hi Kim", answer);

r.close(); // 꼭 close 해야 함

});

/*

 * 

 */



/* Event Emitter 테스트 */

var EventEmitter = require('events');


function MyStream() {

EventEmitter.call(this);

}


util.inherits(MyStream, EventEmitter);


MyStream.prototype.write = function(data) {

this.emit('data', data);

};


var stream = new MyStream();


stream.on('data', function(data) {

console.log('data event: ' + data);

});


stream.write('hello');



/* 파일 관련 입출력 처리 */


var fs = require('fs');


// 비동기 파일 쓰기

var data = 'hi banana';

fs.writeFile('file.txt', data, 'utf8', function(error) {

console.log('write file async completed');

});


// 비동기 파일 읽기

fs.readFile('file.txt', 'utf8', function(error, data) {

console.log('async: ' + data);

});


// 동기 파일 쓰기

fs.writeFileSync('fileSync.txt', data, 'utf8');

console.log('write file sync completed');


// 동기 파일 읽기

var data = fs.readFileSync('fileSync.txt', 'utf8');

console.log('sync: ' + data);