[CookBook] JS 디버깅과 에러처리





Chapter 10. JS 디버깅과 에러처리 





1. JS를 지원하지 않는 환경 처리 방법.


JS를 사용할 수 없는 환경(브라우저 사용자 옵션을 "사용 안함" 으로 변경시킨 경우도 포함.)에서도 페이지를 아무 문제없이 이용할 수 있게 개발해야 한다.



자바스크립트 비활성활를 위한 <noscript> 사용(<noscript> Tag는 사용성(가독성) 논란으로 인해 HTML5 스펙에는 빠져있다.):

http://mohwaproject.tistory.com/search/%EB%A6%AC%EB%94%94%EB%A0%89%EC%85%98





2. JS 에러 처리에 대해..


에러의 "특정 종류" 따라 새로운 Error() 객체를 만들어 발생시킬 수 있다.

   




- Error 객체의 예외 종류.


1. EvalError: eval을 적절하지 않게 사용할을 때 사용

2. RangeError: 숫자가 범위를 벗어났을 때 사용

3. ReferenceError: 정의되지 않은 배열을 참조했을 때 사용

4. SyntaxError: 문법 에러가 있을 때 사용

5. TypeError: 기대하지 않은 타입을 가리킬 때 사용

6. URIError: 잘못된 형식의 URI를 만났을 때 사용


7. DOMException: DOM 에러를 가리킬 때 사용

8. EventException: DOM 이벤트 예외를 가리킬 때 사용

9. RengeException: DOm Range 예외를 가리킬 때 사용


PS. 마지막 세 개의 예외 객체는 "DOM API"와 관련 있으며, 직접 사용 시 에러가 발생한다.






3. 브라우저 내장/확장 디버깅 툴 활용.

    


3.1 파이어폭스 내장 디버그: Ctrl + Shift + K 키 클릭 후 활성




파이어폭스 "파이어 버그" 플러그인(보통 디버깅 시 파이어 버그를 많이 사용한다.):

https://addons.mozilla.org/ko/firefox/addon/firebug/?src=search





3.2 IE8+ 내장 디버그: 키보드 "F12" 키 클릭 후 활성화






Safari 내장 디버그: Ctrl + p 키 클릭 후 활성화(전 브라우저에서 F12키로 통일 해줬음 하는 바램;;)








Chrome 내장 디버그: 키보드 "F12" 키 클릭 후 활성화


   

Chrome Delveloper Tool 사용법:

http://mohwaproject.tistory.com/entry/Chrome-Developer-Tool-%EC%82%AC%EC%9A%A9%EB%B2%95