JSDocs로 TS처럼 JS 사용해보기

user profile img

신현호

JavaScript
Post Thumbnail

목차

    서론

    아직 프리코스가 끝나지는 않았지만.. ㅎㅎ 프리코스를 진행하면서 가장 쏠쏠하게 써먹은게 있다면 바로 JSDocs가 아닐까 합니다.
    동적으로 타입을 지정하는 JS의 특성상 TypeError는 늘 찾아오는 친구같은 존재라고 할 수 있습니다.

    보기만 해도 혈압이 오를 것만 같은 이 TypeError를 방지하고 코드의 가독성을 높여주는 JSDocs에 대해서 간략하게 포스팅 해볼 까 합니다.

    JSDocs가 뭔데?

    jsdocs

    JSDocs는 JS 소스코드 파일에 주석을 달기 위해서 사용되는 마크업 언어입니다!
    해당 요소에 대해서 간략하게 설명을 해준다는 것이 일반 주석과도 다를 것이 없어보이나, JSDocs는 일반 주석과는 다르게 추가적인 기능을 가지고있습니다.

    JSDocs의 사용법

    js

    /**
     * @param {string} parameter
     */
    function something(parameter) {
        ...
    }
    

    위의 코드는 간단하게 something이라는 함수에 parameter typeJSDocs를 통해 표기한 예제입니다.

    파라미터 타입만 가능하냐구요? 당연히 아닙니다. 다음은 JSDocs에 표기할 수 있는 내용들입니다.

    • 변수 타입
    • 함수 타입
    • 커스텀 타입 (복잡한 타입) 정의
    • 콜백
    • DOM 타입
    • 등등등..

    상당히 많은 내용들을 표기할 수 있음을 알 수 있습니다!

    JSDocs의 장점

    JSDocs를 사용하면 다음과 같은 장점을 얻을 수 있습니다.

    jsdocs1

    • 자바스크립트의 불확실한 타입에 대한 힌트 제공 (디버깅의 난이도 하락)

    jsdocs2

    • 인텔리센스 활용 가능

    쉽게 이정도의 장점이 있으며, 추가적인 세팅을 거친다면 TS 못지않은 강력한 기능을 보여줄 수 있습니다.
    주제와 약간 벗어난 듯 하지만, 최근 이슈가 되었던 일 중에서 TS를 더이상 사용하지 않겠다고 선언한 프레임워크, 라이브러리들이 있었습니다.
    해당 내용에 동의하는지 여부를 떠나서 그 개발팀들이 그러한 선택을 할 수 있었던 이유 또한 JSDocs 존재때문이라고 할 수 있겠습니다.

    JSDocs를 잘 활용한다면 TS 부럽지 않은 타입 체킹을 해볼 수 있으니, JS를 사용중이시라면 꼭 사용해보시길 바랍니다!

    Profile Image

    신현호

    Frontend Developer

    프론트엔드 개발자를 꿈꾸고 있는 대학생입니다. 끊임없이 배우고 성장하는 개발자가 되기 위해 노력하고 있습니다.