ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • NodeJS console.log()
    개발언어/Node.js 2022. 7. 8. 13:54

    console.log()

    개발할 때, 디버깅 할때, 서버를 배포했을때 유용한 도구이다.

    VScode를 이용해서 console의 정의부로 이동하면, console에도 많은 api가 있다는 걸 확인 할 수 있다.

     

    현재 출력된 모든 log들을 지우고 싶다면, console에 있는 clrear를 사용하면 된다. 우리가 흔하게 log를 이용하고 있다.

     

    하지만 사실 이런 log도 log level에 따라서, 각기 다른 것을 사용해야한다.

     

    터미널 출력
    브라우저 출력

    Node로 출력 시 다 같은 디자인임에도 불구하고 다양한 api가 존재하는 이유는 server에 배포했을 시 중요한 warn이나 error같은 경우는 log file에 남기거나 log를 남길 수 있는 서비스를 이용 하는 경우가 있는데, log의 심각성에 따라서 level별로 consol.log를 활용하면, 그 심각성을 잘 구분해서 알아차릴 수 있고, error가 있을때 그 부분을 수정하기가 좋다.

     

    개발할 때는 log를 이용하지만 배포할 때는 log를 출력하지 않도록 level 별로 출력할 것인지 file에 저장할 것인지를 control할 수 있다. 그래서 개발할 때 부터 심각성의 level별로 log를 다르게 사용하는 것이 좋다.

     

    assert

    첫번째 인자로 전달한 값이 true가 아닐 때만, 두번째 인자를 log로 출력할 수 가 있다. 특정한 조건 일때 log를 출력하고 싶다면 console.assert를 이용할 수 있다.

     

     

    print object

    Object를 출력할 때도 다양한 API가 존재한다.

    console.dir은 log와 같은 형태로 출력이 되는데, console.log와는 다르게 두 번째 인자인 option을 전달해서, 더 추가 적으로 control을 할 수 있다.

    options

    • showHidden<boolean> :  해당 값이 true라면 JS Object에서 key가 Object.keys를 이용했을때, key가 나타나지 않도록 숨길 수 있는 기능
    • depth <number> :  Object안에 Object가 있다면 어디까지 보여줄 건지 결정할 수 있는 기능
    • colors <boolean>  :  색상을 어떤 식으로 조절할 것인지

     

    Measuring time

    console.time() 안에 label을 지정한 다음에 .timeEnd라는 것을 호출하면, 같은 label이 시작하고 끝날 때 까지 얼마나 걸렸는지 확인 할 수 있다.

     

    console.time()은 성능을 확인할 때 사용하면 유용하다.

     

     

    counting

     

    내가 작성한 함수가 내가 예상한 횟수 만큼 호출이 되었는지 확인하고 싶을때 사용할 수 있다. console.count()안에 label를 작성해주면, 해당 label이 가르키는 함수가 몇번 호출되었는지 확인할 수 있다.

     

    만약 특정한 동작이 발생한 후에 동작을 초기화 하고 싶다면, console.countReset()을 이용하면 된다.

     

    trace

    debbuging할 때 유용하다.

    console.trace()가 들어 있는 함수가 어떻게 호출되었는지, 누가 해당 함수를 호출 하였는지 알고 싶을때 사용할 수 있다. Trace는 f3이라는 함수가 실행된 정확한 file명과 그 함수가 file의 몇번째 line에서 실행 되었는지 까지 확인해 볼 수 있다.

     

    [출처 - https://academy.dream-coding.com/courses/node-tdd]

    댓글

Designed by Tistory.