Page 37 -
P. 37

return odd;
                    }
                    return even;
                  }

                  export default checkOddOrEven;

                 require와 module.exports가 import, export default로 바뀌었습니다. 상당한 부분에서 차이가 있으므로 단
                 순히 글자만 바꿔서는 제대로 동작하지 않을 수 있습니다. 다행히 위 예제에서는 require를 import로, module.
                 exports를 export default로 바꾸기만 하면 됩니다.
                 노드에서도 9 버전부터 ES2015의 모듈 시스템을 사용할 수 있습니다. 하지만 파일의 확장자를 mjs로 지정해야 하
                 는 제한이 있습니다. mjs 확장자 대신 js 확장자를 사용하면서 ES2015 모듈을 사용하려면 5장에서 배울 package.
                 json에 type: "module" 속성을 넣으면 됩니다.




               방금 썼던 require 함수나 module 객체는 따로 선언하지 않았음에도 사용할 수 있었습니다. 이것
               이 어떻게 가능할까요? 바로 노드에서 기본적으로 제공하는 내장 객체이기 때문입니다. 다음 절
               에서 내장 객체를 자세히 알아보겠습니다.






               3.4        노드 내장 객체 알아보기                                N  o  d  e  .  j  s







               노드에서는 기본적인 내장 객체와 내장 모듈(3.5절 참조)을 제공합니다. 따로 설치하지 않아도 바

               로 사용할 수 있으며, 브라우저의 window 객체와 비슷하다고 보면 됩니다.
               이 절에서는 노드 프로그래밍을 할 때 많이 쓰이는 내장 객체를 알아보겠습니다.





               3.4.1 global


               먼저 global 객체입니다. 브라우저의 window와 같은 전역 객체입니다. 전역 객체이므로 모든 파
               일에서 접근할 수 있습니다. 또한, window.open 메서드를 그냥 open으로 호출할 수 있는 것처럼




         96





     node_06.indd   96                                                                      2020-07-14   오전 11:02:04
   32   33   34   35   36   37