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

home2 게시판 JavaScript, TS 게시판 constructor, prototype 연습문제 4개부분에서

constructor, prototype 연습문제 4개부분에서

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

    김현빈
    참가자

    Array.prototype.remove3 = function(){
    for (var i = 0; i < this.length; i++) {
    if ( this[i] === 3 ) {
    this.splice(i,1);
    }
    }
    };

    var arr = [1,2,3,4];
    arr.remove3();

    console.log(arr);

     

     

    this.splice(i,1)   이부분에서 괄호안에 1은 어떤의미인지 구글에 찾아봤는데 너무 광범위하게 나와서 제대로 이해를 못하겠습니다ㅠ

     

    한글로 써보자면 

    만약에 this의 i 번째가 3과 같으면 (i번째의 값과 같으면 <- 이게 맞나요?)  this 의 i번째를 1개를 삭제한다 뭐 이런뜻인가요????

    #16173

    codingapple
    키 마스터

    splice(몇번째아이템부터, 몇개지울건지) 입니다

    [4,5,6,7,8].splice(2,1) 이러면 2번째 아이템부터 1개를 지워주니까 [4,5,7,8] 만 남습니다 

     

    #17645

    김현빈
    참가자

    감사합니다!!

    #22071

    김현빈
    참가자

    그러면 위에 문제에서 

    if (this[i] === 3) {
    this.splice(i, 1);
    }

    이 말은 반복문 돌다가 3 만나면 this.splice(3,1)이 되는건데 

    [1,2,3,4] 의 인덱스 3번째 부터 1개 지우라는것은 무슨뜻인가요???

    [1,2,3,4]의 인덱스 3번째는 4 이고 4부터 1개를 지워라?? 근데 또 결과는 3이 지워진 [1,2,4] 가 나오긴하는데... 

     

     

    #22073

    김현빈
    참가자

    if (this[i] === 3) {
    this.splice(i, 1);
    }

    이 부분에 i 에 3이 들어가는데 그 3이 인덱스 3이라는 뜻이 아닌거겠죠?? 그냥 숫자 3을 의미하는거 맞나요??

    #22074

    김현빈
    참가자

    근데 강의 해답에 보면

    2. 만약에 this[i]가 3이면 

    3. this라는 array에서 i번째 자료를 제거해주세요 

    라고 되어있는데  [1,2,3,4] 에서 0부터 시작하니까 array의 i번째 즉 3번째면 4 아닌가욤..?

    #22075

    김현빈
    참가자

    아 선생님 
    this[i] 는 3이고 배열에서 3의 위치는 인덱스값으로 2이니까 결국 i 에는 2가 들어간다는 말씀이시죠???
    이게 맞는거죠?? 

     

    죄송합니다..

     

    #22085

    codingapple
    키 마스터

    마지막말이 맞는듯요

     

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

About

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

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

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