Javascript 코드 디버깅하기
디버깅은 모든 프로그래머에게 필수적인 기술이며 JavaScript 개발자에게도 예외는 아닙니다. JavaScript는 복잡하고 동적인 애플리케이션을 만드는 데 사용할 수 있는 강력한 언어이지만, 오류가 발생할 때 디버깅하기 어려울 수도 있습니다.
오늘은 최신 웹 브라우저에 포함된 디버거와 타사 애플리케이션에서 제공하는 강력한 도구를 비롯한 디버깅 도구를 사용하여 JavaScript 코드를 디버깅하는 방법을 살펴보겠습니다.
최신 웹 브라우저에 기본으로 내장된 디버거 사용하기
대부분의 최신 웹 브라우저에는 개발자가 JavaScript 코드를 실시간으로 검사하고 디버깅할 수 있는 디버깅 도구(개발자 도구)가 내장되어 있습니다. 예를 들어 Chrome DevTools, Firefox 개발자 도구 및 Microsoft Edge 개발자 도구 등이 있는데요.
가장 많이 사용하는 Chrome DevTools의 경우 디버깅 순서는 다음과 같습니다.
- Chrome을 열고 디버그하려는 웹페이지로 이동합니다.
- 페이지를 마우스 오른쪽 버튼으로 클릭하고 상황에 맞는 메뉴에서 "검사"를 선택합니다. 이렇게 하면 별도의 창에서 Chrome DevTools가 열립니다.
- DevTools 창에서 "Sources" 탭으로 이동합니다.
- DevTools 창의 왼쪽에 있는 파일 탐색기에서 디버깅하려는 JavaScript 파일을 찾습니다.
- 실행을 일시 중지하려는 줄 번호를 클릭하여 코드에 중단점(Break point)을 설정합니다.
- 웹페이지를 새로고침하여 중단점을 트리거합니다.
- 코드가 중단점에서 일시 중지되어 DevTools 창의 컨트롤을 사용하여 변수를 검사하고 코드를 한 줄씩 단계별로 실행할 수 있습니다.
별도의 디버깅 도구 사용
웹 브라우저에서 제공하는 기본 제공 디버깅 도구 외에도 다음과 같은 디버깅 도구를 사용할 수 있습니다.
- Visual Studio Code: Visual Studio Code는 JavaScript용 디버깅 도구가 포함된 코드 편집기(IDE) 입니다. 디버거를 사용하려면 코드에 중단점(Break Point)을 설정하고 F5 키를 눌러 디버깅을 시작하면 됩니다.
- Node.js Inspector: Node.js를 사용하여 서버 측에서 JavaScript로 작업하는 경우 Node.js Inspector를 사용하여 디버깅할수 있습니다. 인스펙터를 사용하려면 --inspect 플래그로 Node.js 스크립트를 시작한 다음 Chrome DevTools를 열고 "Node.js" 탭으로 이동하면 됩니다.
- Firebug: Firebug는 콘솔, 검사기 및 네트워크 모니터를 포함하여 JavaScript 디버깅을 위한 전체 도구 모음을 제공하는 Firefox 애드온입니다.
- Firebug Lite: Firebug Lite는 Firefox용 Firebug 디버깅 도구의 간소화 버전입니다. 브라우저의 북마크 바에 추가할 수 있는 bookmarklet으로 모든 웹 페이지에서 Firebug Lite 콘솔에 빠르게 액세스할 수 있습니다. 일단 활성화되면 Firebug Lite는 콘솔, HTML 인스펙터, CSS 인스펙터를 포함한 다양한 디버깅 기능을 제공합니다.
- JSFiddle: JSFiddle은 웹 브라우저에서 직접 JavaScript, HTML 및 CSS 코드를 작성하고 테스트할 수 있는 온라인 코드 편집기입니다.JSFiddle에는 실시간으로 코드를 단계별로 실행하고 변수를 검사할 수 있는 강력한 디버깅 기능이 포함되어 있습니다. JSFiddle에서 디버거를 사용하려면 실행을 일시 중지하려는 줄 번호를 클릭하여 코드에 중단점을 추가한 다음 "Debug" 버튼을 클릭하여 디버깅을 시작합니다.
- WebStorm: WebStorm은 Visual Studio Code와 비슷한 코드 편집기(IDE)로, 웹 개발에 특화되어 있는 제품입니다. WebStorm에서 디버거를 사용하려면 실행을 일시 중지하려는 줄 번호를 클릭하여 코드에 중단점을 설정한 다음 도구 모음의 "Debug" 버튼을 사용하여 디버거를 시작하면 됩니다.
효과적인 JavaScript 디버깅을 위한 또 다른 팁
디버깅 도구를 사용하면 JavaScript 코드에서 오류를 찾고 수정하는 프로세스를 훨씬 쉽게 만들 수 있지만 이 외에도 다른 방법이 있습니다.
- 기본적인 사항들 검토하기 (코드 리뷰, 인스펙션): 변수, 데이터 유형 및 제어 구조를 포함하여 JavaScript의 기본 사항을 이해해야 합니다. 코드를 디버그하는 데 어려움을 겪고 있다면 언어 자체에 대한 확실한 이해가 없기 때문인 경우가 많습니다. 또한 아주 어이없게도 기본적인 부분을 잘못 사용하고 있다던지, 오타가 있어서 문제가 발생하는 경우도 정말 많습니다.
- console.log() 문 사용: Console.log()는 JavaScript 코드 디버깅을 위한 간단하지만 강력한 도구입니다. 코드에 console.log() 문을 추가하면 변수 및 기타 데이터를 콘솔에 출력할 수 있으므로 오류를 식별하고 보다 효율적으로 디버깅할 수 있습니다.
- 문제를 세분화 하기: 복잡한 문제를 디버깅하려는 경우 더 작고 관리하기 쉬운 부분으로 세분화 한 뒤 살펴봅니다. 가능한 가장 간단한 버전의 문제로 시작한 다음 오류를 찾을 때까지 점진적으로 복잡성을 추가합니다.
- 연습, 연습, 연습: 디버깅은 기술이며 다른 기술과 마찬가지로 더 나아지려면 연습이 필요합니다. 디버깅이 쉬워지려면 계속 연습하며 본인만의 방법을 찾아 가는 것도 좋은 방법입니다.
반응형
'Frontend > Javascript' 카테고리의 다른 글
타입스크립트를 이용해 구구단 짜기 (0) | 2023.03.01 |
---|---|
자바스크립트 VS 타입스크립트! 어떤걸 선택해야 할까? (3) | 2023.02.28 |
String관련 유용한 연산들 (0) | 2023.02.27 |
콜백 함수(callback) (0) | 2022.12.13 |
단 20줄로 만들어보는 로또번호 생성기! 소스 코드 (0) | 2022.11.07 |