customEvent binding 할 때에는,
생성자 함수 실행 이전에 이벤트를 걸어주는게 좋다.
왜냐면, 생성자 함수 내에서 DOM 객체를 통해 계산하는 로직이 있다면
dispatch 했을 때보다 addEventListener 를 더 늦게 해서
이벤트를 감지하지 못할 수 있기 때문이다.
window.onload와 document.addEventListener('DOMContentLoaded', fn)은 큰 차이가 없지만
onload는 DOM은 물론, 이미지와 같은 자원까지도 모두 로드 되었을 때를 감지하고, 이후에 선언된 onload가 무시되는 버그가 있기도 하댔음.
DOMContentLoaded는 DOM만 로드되었을 때를 감지하며, IE8 이하를 지원하지 않는다.