Page 35 -
P. 35

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

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

                 module.exports = checkOddOrEven;



               require 함수 안에 불러올 모듈의 경로를 적습니다. 위 예제에서는 같은 폴더 안에 파일을 만들었
               지만, 다른 폴더에 있는 파일도 모듈로 사용할 수 있습니다. require 함수의 인수로 제공하는 경
               로만 잘 지정하면 됩니다. 파일 경로에서 js나 json 같은 확장자는 생략할 수 있습니다.

               예제 코드에서 require 함수로 var.js에 있던 값들을 불러오고 있습니다. const { odd, even }은
               2.1.5절에서 설명한 ES2015+ 문법입니다. var.js의 module.exports에 담겨 있던 객체를 불러와
               func.js에서 사용하는 모습입니다.

               var.js에서 변수를 불러온 뒤, 숫자의 홀짝을 판별하는 함수를 선언했습니다. 그리고 다시 module.
               exports에 함수를 대입했습니다. 이렇게 다른 모듈(var.js)을 사용하는 파일을 다시 모듈(func.js)
               로 만들 수 있습니다. 또한, module.exports에는 객체만 대입해야 하는 것이 아니라 함수나 변수

               를 대입해도 됩니다.

               마지막으로 index.js를 작성합니다.

                 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'));


         94





     node_06.indd   94                                                                      2020-07-14   오전 11:02:03
   30   31   32   33   34   35   36   37