>  Q&A  >  본문

javascript - js의 Shift() 메소드가 유효하지 않습니다.

언급했듯이 코드는 다음과 같습니다.

으아아아

배열과 유사한 객체는 Shift 메서드 API를 호출할 수 없나요?

滿天的星座滿天的星座2662일 전1058

모든 응답(4)나는 대답할 것이다

  • 扔个三星炸死你

    扔个三星炸死你2017-07-05 10:47:34

    클래스 배열은 배열이 아니며, 배열을 상속하는 관련 API가 없습니다.
    call 또는 Apply를 사용하여 이를 바인딩할 수 있습니다.
    예를 들어

    으아악

    ps: Shift에는 배열의 내용 작업도 포함됩니다. 방금 시도했는데 배열 개체를 이동하기 위해 호출을 사용했습니다. DOM 처리도 포함된 경우 관련 개체의 길이를 수정할 수 없다고 보고됩니다. 관련 DOM 작업을 사용하는 것이 좋습니다. 예를 들어, RemoveChild는 확장되지 않습니다. DOM 배열 객체에 대한 관련 정보는 다음과 같은 mdn에서 찾을 수 있습니다: https://developer.mozilla.org...

    회신하다
    0
  • 代言

    代言2017-07-05 10:47:34

    Shift는 원래 배열을 수정하여 길이 속성을 변경하지만 길이는 읽기 전용입니다. 다음과 같은 방법으로 사용할 수 있습니다.

    으아악

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-07-05 10:47:34

    물론 Shift는 배열 메서드입니다. 먼저 클래스 배열을 배열로 변환한 다음 호출할 수 있습니다
    Array.prototype.slice.call(arraylike);

    회신하다
    0
  • 欧阳克

    欧阳克2017-07-05 10:47:34

    console.log(a)
    다음을 볼 수 있습니다. __proto__:HTMLCollection HTMLCollection에는 Shift 메서드가 없습니다.

    회신하다
    0
  • 취소회신하다