Software Engineering

node.js module 사용법

JO_turn 2020. 11. 14. 23:36

공식문서에 따르면 Node.js는 JavaScript의 비동기 이벤트 기반 런타임이라고 명시되어 있다.

 

모듈(module)이란 어떤 기능을 떼서 조립할 수 있는 형태로 만든 부분이다.

node.js 내장 모듈 목록은 여기서 찾아볼 수 있다.

 

node.js 내장 모듈 사용하는 방법

모듈을 사용하기 전 모듈을 불러오는 과정이 필요하다.

그 과정은 자바스크립트 코드 가장 상단에 require 구문을 사용하는 것이다.

const fs = require('fs');
// 파일 시스템 모듈을 불러온다.

const dns = require('dns');
// DNS 모듈을 불러온다.

 

 

fs.readFile의 공식 API 문서를 통해 사용법 알아보기.

파일을 읽을 때에는 fs.readFile 메서드를 사용한다.

//fs.readFile 메서드는 비동기적으로 파일 내용을 읽는다.

 

fs.readFile(path [, options], callback)

//메서드를 실행할 때 3개의 인자를 받는다.

path :string, Buffer, URL, integer

path에는 파일 이름을 인자로 넘긴다, 네 가지의 type을 넘길 수 있지만 보통 'string'을 넘긴다.

[] 대괄호는 생략 가능한 인자이다.

 

options : opject, string

options는 객체, 문자열을 인자로 넘긴다. 주로 받는 파일을 어떤 형식으로 읽을지를 결정한다.

 

callback : function

콜백 함수로는 err를 리턴하거나, data를 리턴하는 함수를 받는다.

콜백함수는 비동기적으로 실행되는 함수이다.

콜백함수의 인자로는 null, data를 받는다.

 

<--- 사용해보기 --->

const fs = require("fs");
//fs모듈을 불러온다.

const getDataFromFile = function (filePath, callback) {
  let options = {
    encoding : "utf-8"
  };
  //utf-8의 형식으로 인코딩한다.
  //options를 선언하지 않고, fs.readFile 두번째 인자에 
  //'utf-8'을 넘겨도 동일하게 실행된다.
  
  fs.readFile(filePath, options, function (err, data)  {
    if(err) {
      return callback(err, null);
    }
    else{
      return callback(null, data);
    }
  })
};

3rd-party 모듈을 사용하는 방법

3rd-party란 공식적으로 제공하는 것이 아닌 제3의 모든 것을 뜻한다.

공식적으로 지원하지 않는 것을 사용하고자 할 때는 npm install을 이용해서 다운로드한다.

npm install underscore;
//underscore 설치

const _ = require('underscore')
//require 구문을 통해 underscore 사용하기

 

 

 

'Software Engineering' 카테고리의 다른 글

Fetch API  (0) 2020.11.16
Web Architectures(웹 시스템의 구성)  (2) 2020.11.15
동기(Synchronous), 비동기(Asynchronous)  (0) 2020.11.14
고차함수(Higher order function) in Javascript  (0) 2020.11.14
HTML  (0) 2020.11.12