Node.js 디버깅 필수: console.log와 console.dir 차이점과 사용법

Node.js 디버깅 필수: console.log와 console.dir 차이점과 사용법

Node.js에서 콘솔 출력을 사용하는 것은 디버깅과 데이터 확인에 매우 유용합니다. 특히 복잡한 객체나 JSON 데이터를 출력할 때는 console.logconsole.dir 함수를 적절히 사용하는 것이 중요합니다. 이 글에서는 두 함수의 차이점과 사용법에 대해 알아보겠습니다.

console.log 소개 및 사용법

console.log 함수는 모든 타입의 데이터를 콘솔에 출력하는 기본 함수입니다. 문자열, 숫자, 객체 등 다양한 타입의 데이터를 출력할 수 있습니다. 기본적으로 객체의 첫 번째 수준까지만 출력합니다.

예제

const user = {
  name: 'blueshare',
  age: 30,
  email: 'blueshare@example.com'
};

console.log(user);
console.log('User name is:', user.name);

위 예제에서 console.log를 사용하여 객체와 문자열을 출력합니다. 객체의 첫 번째 수준까지만 출력되기 때문에, 복잡한 객체를 출력할 때는 일부 정보가 생략될 수 있습니다.

console.log 예제 결과

console.dir 소개 및 사용법

console.dir 함수는 객체를 더 깊이 탐색하여 구조를 자세히 보여줍니다. JSON 데이터나 복잡한 객체를 출력할 때 유용합니다. 출력 깊이와 색상을 설정할 수 있는 옵션을 제공합니다.

예제

const user = {
  name: 'BlueShare',
  age: 30,
  email: 'BlueShare@example.com',
  address: {
      street: '강남구',
      city: '서울시',
      zip: '12345'
  }
};

console.dir(user, { depth: null, colors: true });

위 예제에서 console.dir을 사용하여 user 객체의 모든 속성을 깊이까지 탐색하여 색상과 함께 콘솔에 출력합니다. depth: null 옵션은 객체를 무한히 깊이까지 탐색하도록 설정하고, colors: true 옵션은 출력에 색상을 추가합니다.

console.dir 예제 결과

두 함수의 차이점 및 비교

  • console.log(): 일반적으로 모든 타입의 데이터를 콘솔에 출력하는 데 사용됩니다. 기본적으로 객체의 첫 번째 수준까지만 표시합니다.
  • console.dir(): 객체의 모든 속성을 더 깊이 탐색하고, 옵션을 사용하여 출력의 깊이와 색상을 조절할 수 있습니다.

따라서 JSON 데이터나 복잡한 객체를 콘솔에 출력할 때는 console.dir()를 사용하는 것이 유용합니다. 간단한 데이터 출력이나 단순한 메시지 로그에는 console.log()를 사용하는 것이 적합합니다.

결론

Node.js에서 console.logconsole.dir 함수는 디버깅과 데이터 확인에 매우 유용한 도구입니다. 각 함수의 특성과 사용법을 이해하고 적절히 활용하면 코드 디버깅과 성능 최적화에 큰 도움이 됩니다. 이 글에서 소개한 방법들을 사용하여 콘솔 출력을 효과적으로 활용해 보세요.

참고 자료

관련 이전 게시글

이 글이 도움이 되셨다면 공유 부탁 드립니다.

위로 스크롤