• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 JavaScript, TS 게시판 함수의 파라미터를 1씩 증가시키면서 반복시키고 싶어요!

함수의 파라미터를 1씩 증가시키면서 반복시키고 싶어요!

5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 글쓴이
  • #28408

    kk
    참가자

    쌤 안녕하세요!

    강의를 들으면서 mbti 검사 같이 사용자가 클릭해서 결과를 얻을 수 있는 사이트를 만들어보고 있는데요

    하다가 막혀서 질문해봅니당

     

    0) 연보라색 박스에 있는 코드를 함수로 만들어서 

    초록색 화살표 위치에서 qnalist[i][0] , qnalist[i][1], qnalist[i][2] 이런식으로 뒤에 배열을 증가하면서 반복시키고 싶읃데

     

    1) 단순 반복문으로 해보니까 qnallist[i][12], 마지막 설문지인 12번째 문항만 나오고

    2) 함수에 파라미터를 넣어서 해보니깐 콘솔창에 오류는 안나는데 답을 고르면 다음 문제가 안나와서 진행이 안되요ㅠㅠ

     

    어떻게 고치면 될까요ㅠㅜ 조언부탁드립니당

     

    0) 수정 전 코딩

     

    2) 나름대로 수정했지만 작동하지 않는 코딩

    #28409

    kk
    참가자

     

    2) 나름대로 수정했지만 작동하지 않는 코딩

    for(let i=0; i<6; i++){
    $('.btn').eq(i).click(function(){

    var 파라미터=0;

    function gonext(파라미터){
    $('.qbox').html(qnalist[i][파라미터].q);
    $('.answerbox').html('');
    for(let j in qnalist[i][파라미터].a){
    addanswer(qnalist[i][파라미터].a[j].answer, 파라미터);
    }

    function addanswer(answertext, 파라미터){
    var a = document.querySelector('.answerbox');
    var answer = document.createElement('button');
    answer.classList.add('answerlist');
    a.appendChild(answer);
    answer.innerHTML=answertext;

    answer.addEventListener("click", function(){
    var children = document.querySelectorAll('.answerlist');
    for(let i=0; i<children.length; i++){
    children[i].disabled = true;
    children[i].style.display='none';
    }
    gonext(++파라미터);
    });
    }
    }
    });
    }

    #28447

    codingapple
    키 마스터

    function은 저거 반복문 바깥에 만들고 반복문 안에서 함수(); 사용하면 됩니다 

    반복문을 쓸 경우에 반복문 변수를 var i 말고 var j 이런걸로 바꿔봅시다 

    #28482

    kk
    참가자

     

    반복문 for(let i=0; i<6; i++){

    }

    밖에다가 

    연보라색 네모를 함수로 만들면

    i가 정의되지 않았다는 오류가 뜹니당

     

    반복문 안에다가 만들면 (변수는 k로 했어요)

    답을 클릭하면 2,3,4 차례로 넘어가는게 아니라

    곧바로 마지막 단계인 12가 나와버려요..ㅠㅠ

    #28489

    codingapple
    키 마스터

    일단 함수안에 있는 변수 i도

    함수 파라미터로 입력할 수 있게 만들면 됩니다 

5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠