티스토리 뷰

JavaScript/오류해결하기

JavaScript 오류 해결하기-3

justgodoit 2024. 8. 13. 14:30

목차

    문제

    함수 작성 시 오류발생하여 오류 원인과 수정 후 해결에 대해 작성하겠습니다.

    > 로그인 기능 구현 시 마다 아이디/비번/이메일/토큰 중 매번 두개를 체크해야된다고 가정한다.
    > 각 체크를 담당하는 함수들을 미리 정의한다.
    
        const fnIdCheck = () => {
          console.log("아이디체크");
        }
        const fnPwdCheck = () => {
          console.log("비밀번호체크");
        }
        const fnEmailCheck = () => {
          console.log("이메일체크");
        }
        const fnTokenCheck = () => {
          console.log("토큰체크");
        }
    
    > 로그인 처리하는 함수를 정의한다.
    > 이때 체크해야 될 두개의 함수를 콜백함수로 전달받는다.
    > 전달된 각 함수를 실행한다.
    
        const fnLogin = (fnCheck1, fnCheck2) => {
          fnCheck1();
          fnCheck2();
        }

     

      <!-- case1. 아이디 및 비번 체크해야 될 경우-->
      <button onclick="fnLogin(fnIdCheck, fnPwdCheck);">로그인1</button>
      <!-- case2. 아이디 및 비번 체크해야 될 경우-->
      <button onclick="fnLogin(fnEmailCheck, fnPwdCheck);">로그인2</button>
      <!-- case3. 아이디 및 토큰 체크해야 될 경우-->
      <button onclick="fnLogin(fnIdCheck, fnTokenCheck);">로그인3</button>

     

    🚨 오류

    ▶Uncaught 

    ReferenceError: fnCheck2 is not defined
        at fnLogin (07_function.html:318:7)
        at HTMLButtonElement.onclick (07_function.html:324:53)

     

    👀 구글번역

    ▶잡히지 않음 
    ReferenceError: fnCheck2가 정의되지 않았습니다.
        fnLogin에서(07_function.html:318:7)
        HTMLButtonElement.onclick(07_function.html:324:53)에서

     

    ❓ 원인

    화살표 함수 내에 변수명을 잘못 입력했습니다.

     

        const fnLogin = (fnCheck1, fcCheck2) => {
          fnCheck1();
          fnCheck2();
        }

     

    ✅ 해결

    화살표 함수 내에 변수명을 잘못 입력했습니다.

     

        const fnLogin = (fnCheck1, fnCheck2 ) => {
          fnCheck1();
          fnCheck2();
        }

     


    오류발생 시 콘솔창 확인 후 오류를 찾아 수정하는 습관을 형성하고 있습니다. 보통 오류 발생 시 오타인 경우가 많기 때문에 이렇게 지속적으로 오류 발생을 기록하다보면 스스로 오타를 범하는 실수를 줄이기 위해 신경쓰게 되는 것 같습니다.

    'JavaScript > 오류해결하기' 카테고리의 다른 글

    JavaScript 오류 해결하기-4  (0) 2024.08.14
    JavaScript 오류 해결하기-2  (0) 2024.08.13
    JavaScript 오류 해결하기  (0) 2024.08.13