Doit! - 노드 간단하게 살펴보기
02-1 첫 번째 노드 프로젝트 만들기
js
파일을 실행하려면 터미널에 $ node [파일이름].js
라 치면 실행된다.
터미널 창에서 $ node
를 입력하면 한줄 씩 바로 코드 결과를 확인 할 수 있다.
02-2 콘솔에 로그 뿌리기
console 객체는 Global Object(전역 객체)이다. Global Object는 필요할 때 코드의 어느 부분에서나 사용할 수 있다.
Global Object | 설명 |
console | 콘솔 창에 결과를 보여주는 객체 |
process | 프로세스의 실행에 대한 정보를 다루는 객체 |
exports | 모듈을 다루는 객체 |
결과에서 나오는 undefined
는 반환 값이 없다는 의미이다.
undefined
와 null
의 차이
undefined
와 null
의 차이undefined
는 단순히 값이 존재하지 않는다고 생각하면 되고, null
은 의도적으로 값을 비웠다고 생각하면된다.
console 메소드
메소드 | 설명 |
dir(object) | 자바스크립트 객체의 속성들을 출력 |
time(id) | 실행 시간을 측정하기 위한 시작 시간 기록 |
timeEnd(id) | 실행 시간을 측정하기 위한 끝시간 기록 |
전역 변수
변수 | 설명 |
__filename | 실행한 파일의 이름 출력 |
__dirname | 실행한 파일이 들어 있는 폴더 출력 |
02-3 프로세스 객체 간단하게 살펴보기
process 객체는 프로그램을 실행했을 때 만들어지는 프로세스 정보를 다루는 객체이다.
주요 속성 / 메소드
속성/메소드 | 설명 |
argv | 프로세스를 실행할 때 전달되는 파라미터(매개변수)정보 |
env | 환경 변수 정보 |
exit() | 프로세스를 끝내는 메소드 |
process.env
속성에는 사용자 정의 환경 변수만 들어가 있기 때문에 OS와 같은 시스템 환경 변수에 접근할 수 없다.
02-4 노드에서 모듈 사용하기
메인 파일 코드 중 독립적인 기능은 별도 파일로 분리할 수 있으며, 메인 파일에서는 전체적인 진행 순서나 흐름만을 제어한다. 이렇게 분리된 파일을 모듈이라고 한다.
exports
객체의 속성으로 변수나 함수를 지정하면 그 속성을 main.js와 같은 메인 자바 스크립트 파일에서 불러와 사용할 수 있다. 모듈을 불러올 때는 require()
메소드를 사용한다.
module.exports
와 exports
module.exports
와 exports
module.exports
에는 하나의 변수나 함수 또는 객체를 직접 할당한다. exports
에는 속성을 추가할 수 있어 여러 개의 변수나 함수를 각각의 속성으로 추가할 수 있다.
외장 모듈
다른 사람이 만들어 둔 모듈을 외장 모듈이라고 한다. 시스템 환경 변수에 접근할 수 있는 모듈의 이름은 nconf이다.
npm패키지를 사용해 다른 사람들이 만들어 올려 놓은 패키지를 다운할 수 있다.
$ npm install nconf
02-5 간단한 내장 모듈 사용하기
내장 모듈은 자주 사용하는 기본 기능을 노드에 포함시켜 제공하는 것이다. 내장 모듈은 설치하지 않고 바로 사용할 수 있다.
시스템 정보 알려주는 os모듈
메소드 | 설명 |
hostname() | 운영체제의 호스트 이름을 알려준다. |
totalmem() | 시스템의 전체 메모리 용량을 알려준다. |
freemem() | 시스템에서 사용 가능한 메모리 용량을 알려준다. |
cpus() | CPU정보를 알려준다. |
networkInterfaces() | 네트워크 인터페이스 정보를 담은 배열객체 반환 |
파일 패스를 다루는 path 모듈
메소드 | 설명 |
join() | 여러 개의 이름들을 모두 합쳐 하나의 파일 패스로 만들어 준다. |
dirname() | 파일 패스에서 디렉터리 이름 반환 |
basename() | 파일의 확장자를 제외한 이름 반환 |
extname() | 파일의 확장자 반환 |
Last updated