중첩된 if 문이 존재하지만 중첩을 제거하지 않는 편이 코드를 읽기 더 편합니다. 읽기 쉬운 코드를 만드는 게 더 우선입니다.
그림 8-7 보너스 숫자가 나오지 않음
그런데 실행해 보면 alert() 대화상자가 보너스 공보다 더 먼저 보입니다. alert() 메서드는 화면을 그리는 동작보다 더 먼저 실행되는 현상이 있습니다. 따라서 화면이 그려지기까지 조금 기다리면 됩니다. 얼마나 기다려야 할지 궁금할 텐데 다음 코드처럼 0초만 기다려도 문제가 해결됩니다. 화면을 그리는 코드(drawBall())와 alert() 사이에 비동기 함수가 있기만 하면 됩니다.