Node.js

Node.js 기초 4 - 콘솔에서의 입력값

에포트 2020. 8. 2. 15:42

노드js에서 콘솔에서의 입력값에 대해서 알아보자. 먼저, 새 디렉터리에 console.js라는 파일을 만들고 아래와 같은 코드를 입력한다.

 

const args = process.argv;
console.log(args);

 

이제 cmd를 켜 콘솔에서 노드js를 실행시키며 뒤에 값들을 띄어쓰기 구분으로 다음과 같이 입력해 보자.

 

PS C:\Users\bumsu\nodejs-projects\console_log> node console.js hello beomseok
[
  'C:\\Program Files\\nodejs\\node.exe',
  'C:\\Users\\bumsu\\nodejs-projects\\console_log\\console.js',
  'hello',
  'beomseok'
]

 

이와 같이 출력된다. 보면 args에 들어오는 값은 배열이며 출력되는 값들은 띄어쓰기 구분에 따라서 각각의 객체로 출력되는 것을 볼 수 있다. 보면 첫 번째 문자열은 노드js를 실행하는 exe 파일의 디렉터리이다. 두 번째 문자열은 내가 실행한 console.js의 디렉터리이다. 콘솔에서 첫 번째 인수가 node, 두 번째 인수가 console.js 였던 것을 생각해 보면 얼추 의미가 짐작이 간다. 콘솔이 이와 같이 객체를 실행시키는 것이라고 볼 수 있다.

 

또한, 이는 콘솔에서 파일을 실행시키며 바로 전달해 줄 수 있는 입력값이다. 만약 들어오는 값들을 모두 출력하고 싶다면, 당연히 첫 두 아이템 (디렉터리들) 만 제외하고, 출력시켜 주면 된다. 다음과 같이 코드를 작성해 들어온 인수들을 모두 출력하는 프로그램을 작성해 보자.

 

const args = process.argv;

for (let i = 0; i < args.length; i++) {
    if (i<=1) continue;
    console.log(args[i])
}

 

결과

 

PS C:\Users\bumsu\nodejs-projects\console_log> node console.js hello beomseok
hello
beomseok

 

이제 콘솔창에서의 입력으로 들어오는 값들은 프로그램에서 어떻게 다룰지 생각해보면 된다.