자바스크립트 JS/리액트 React 노드 Node JS 공부일지

노드 js 입문 공부 일지 2. 노드 실행하는 방법

Tomitom 2022. 11. 22. 15:03
반응형

 

REPL

REPL은 Read(읽기) , Eval(평가하기) , Print(출력하기) , Loop(반복하기) 라는 의미로, 대화형 테스트 콘솔을 제공합니다. 

터미널에서 node 명령어를 실행하여 REPL을 실행시킬 수 있습니다. 

노드가 제공하는 대화형 셸이라고 생각하시면 됩니다. 

 

cmd -> 명령 프롬프트 -> node 입력

 

자바스크립트 파일 실행하기 

자바스크립트 파일을 만들고 해당 디렉토리에서 node 명령어를 실행합니다.

 

 

모듈화하기 

 

모듈화란, 코드를 기능 또는 규모에 따라 분할하는 것을 의미합니다.

모듈이란 하나의 자바스크립트 파일을 의미합니다.

노드에서는 모듈 내보내기/불러오기를 위해 다음 두 가지를 사용할 수 있습니다. 


● require(모듈) : 모듈에서 내보낸(exports) 대상을 반환한다.  (import의 역할을 합니다.)
● module.exports : 현재 모듈에서 내보낼 대상을 참조한다

 

우선 모듈화를 하기 위한 자바스크립트 파일을 만듭니다. 

모듈화를 하기 위해서는 하단에 module.exports = 사용할 함수를 적어주어야 합니다.  (내보낼 함수들) 

const sayHello = () => console.log("안녕하세요!")
const sayGoodBye = () => console.log("안녕히 가세요!")
const sayNice = () => console.log("아주 나이스")

module.exports = sayGoodBye

 

그리고 모듈을 사용할 자바스크립트 파일을 작성합니다. 

작성 시에는 exports 한 함수에 대해 require 로 대상을 반환 받아서 사용합니다. 

 

const sayGoodBye = require("./mod") // require 시에 확장자는 생략 가능
// 해당 경로가 export 하는 대상을 가져온다. 대상을 반환받아서 저장을 해야함 

sayGoodBye()

이제 실행해보면 해당 모듈을 다른 스크립트에서 사용할 수 있는 것을 확인할 수 있습니다. 

 

모듈에 대한 함수를 모두 포함하여 가져고오 싶다면, module.exports 에 향상된 객체 리터럴을 사용합니다. 

모듈화를 만드는 스크립트를 열어서 객체 리터럴을 작성해줍니다. 

 

const sayHello = () => console.log("안녕하세요!")
const sayGoodBye = () => console.log("안녕히 가세요!")
const sayNice = () => console.log("아주 나이스")

module.exports = {
    sayHello,
    sayGoodBye,
    sayNice
}

 

메인 스크립트에서 객체 리터럴된 함수들을 가져옵니다. 

 

 

const {
    sayHello,
    sayGoodBye,
    sayNice} = require("./mod") 

sayHello()
sayGoodBye()
sayNice()

화면에서 실행하는 것 까지 확인합니다. 

여기까지 노드를 작성하고 실행하는 것을 해보았습니다. 

다음에는 노드 기반의 서버를 만들어보는 것까지 해볼게요. 

반응형