본문 바로가기
Node.Js 정복기

노드의 기능 part 1.

by HoneyIT 2021. 1. 11.

REPL


노드에서 제공하는 콘솔에서 입력한 코드를 읽고(Read), 해석하고(Eval), 결과물을 반환하고(Print), 반복(Loop)하는 것을 REPL(Read Eval Print Loop)이라고 합니다.

 

1. 노드가 설치되어 있지 않으면 노드를 설치합니다.(https://nodejs.org/ko/)

 

환경 변수로 등록되어 있는 것을 확인해줍니다.

 

2. 노드의 REPL을 사용하기 위해 명령 프롬프트를 열어줍니다.

3. nodejs가 설치되어 있는 경로로 가서 node 를 실행해줍니다.

$ node

입력한 코드를 정상적으로 REPL이 읽고 해석한 후 결과물로 출력한 것입니다.

 


 

js 파일 실행


콘솔에서 긴 코드를 실행하는 것이 불편하기 때문에 js 파일로 만들어 실행하는 것이 편합니다.

 

function helloWorld() {
    console.log('Hello World');
    helloNode();
}

function helloNode() {
    console.log('Hello Node')
}

helloWorld();

기본적인 js파일을 만들어주었습니다.

 

제대로 출력되는 것을 볼 수 있습니다.

 


 

모듈 만들기


노드는 자바스크립트와 달리 ˚모듈로 만들 수 있습니다. 보통 하나의 파일이 모듈 하나가 되며 파일별로 코드를 모듈화할 수 있어서 관리하기 편합니다.

 

그림 1. 모듈과 프로그램

 

var.js

const odd = '홀수';
const even = '짝수';

module.exports = {
    odd,
    even
}

우선 '홀수'와 '짝수' 변수를 가진 모듈을 만듭니다.

 

func.js

const { odd, even } = require('./var');

function checkOddOrEven(num){
    if (num % 2) {//홀수면
        return odd;
    }
    return even;
}

module.exports = checkOddOrEven;

requre 함수로 var.js 파일의 변수를 불러옵니다.('const { odd, even }'은 'ES2015+' 문법)

받는 숫자가 홀수인지 짝수인지 계산하는 함수를 만들었습니다.

exports 함수를 이용하여 다른 모듈을 사용하는 파일을 다시 모듈로 만듭니다.

 

index.js

const { odd, even} = require('./var');
const checkNumber = require('./func');

function checkStringOddOrEven(str){
    if(str.length % 2){
        return odd;
    }
    return even;
}

console.log(checkNumber(10));
console.log(checkStringOddOrEven('hello'));

'checkStringOddOrEven' 함수는 var.js를 참조하고 'checkNumber'에 func.js을 참조시켜 사용합니다.

 

숫자 '10'의 여부를 func.js파일의 함수를 이용하여 계산하고 var.js 파일의 문자열을 이용하여 출력합니다.

'hello'라는 문자열의 길이를 var.js 파일의 문자열을 이용하여 출력합니다.


 

용어사전

 

모듈 : 특정한 기능을 하는 함수나 변수들의 집합

'Node.Js 정복기' 카테고리의 다른 글

노드 기능 part 2.  (0) 2021.01.13
MongoDB 설치 및 기초  (0) 2021.01.06
핵심 개념 이해하기  (0) 2020.12.28