자바스크립트 return 관련 문의 드립니다.

조회수 532회
<script>
function showMovie(age) {
    //checkAge의 반환값이 false라면 종료
    if (!checkAge(age)) { 
        return alert('오류');
    //checkAge의 반환값이 true
    } else { 
        alert('영화 상영');
    }
}

function checkAge(age) {
    if (age > 18) {
        return true; 
    } else {
        //동의 안할시 false 반환
        return confirm('보호자의 동의를 받으셨나요?'); 
    }
}

function init() {
    let age = prompt('나이를 알려주세요');
    showMovie();
}
init();
</script>

나이를 18세 초과인 값을 입력하면 바로 영화상영 메세지가 나와야하는데요. 보호자동의 confirm 메세지로 이동해지는 이유가 뭔지 궁금합니다.

  • init 함수 안에서 선언한 지역변수 age를 showMovie()에 전달하지 않아서 생기는 문제 아닐까요? HIAOAIH 2020.2.10 11:20

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)