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

home2 게시판 JavaScript, TS 게시판 sort, map, fliter 응용 버튼 만들기에 관해 질문이 있습니다

sort, map, fliter 응용 버튼 만들기에 관해 질문이 있습니다

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

    조승제
    참가자
    다나가순 정렬일때는 이벤트리스너 함수내부에서 products.sort()를 사용해서 원본 products
    를 정렬하잖아요? 그런데 되돌리기 버튼을 위해 다음과 같이 코드를 짜봤습니다:
    
    // 되돌리기 기능 -> 빈 리스트 만들어서 forEach반복문으로 Object 자료형 push()로 하나씩 저장
      var copiedProducts = [];
        products.forEach((a,i) => {
        console.log(a);
        copiedProducts.push(a);
        });
        
        $('#undo').click(function(){
          $('.row').html('');
          copiedProducts.forEach((a,i) => {
            var template = `<div class="col-sm-4">
                        < img src="https://via.placeholder.com/600" class="w-100">
                        <h5>${copiedProducts[i].title}</h5>
                        <P>가격: ${copiedProducts[i].price}</p>
                        </div>`;
          $('.row').append(template);
        })
      })
    제가 궁금한 점은 copiedProducts에 저장하기 위한 products.forEach() 반복문에서의 products는
    가장 처음에 Array / Object 자료형으로 초기화한 전역변수인가요, 아니면 정렬을 하고나서의
    products인가요?
    +추가로 궁금한 점이 있는데요, 이벤트리스너 함수 내부에서 사용하는 객체는 그 범위에서만
    유효하나요? 아예 전역변수의 객체와 별개인가요?
    #92464

    codingapple
    키 마스터
    products는 복사한 적 없으면 정렬하든말든 하나만 존재할듯요 
    object를 함수바깥에서 정의했으면 함수안에서도 쓸 수 있고 함수안에서 만들었으면 바깥에서 쓸 수는 없습니다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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