>  Q&A  >  본문

자바스크립트 - 이것은 무슨 배열인가요?

정규식을 배우던 중 exec 메소드가 이런 배열을 반환하는 것을 발견했습니다. 이것은 어떤 배열인가요?

브라우저 콘솔에 이 배열을 입력했는데 오류가 발견되었습니다

PHP中文网PHP中文网2667일 전771

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

  • 巴扎黑

    巴扎黑2017-06-30 10:01:14

    내 typeof가 보면 객체라고 하는데, typeof는 데이터를 확인해서 객체라고 알려줍니다.

    Array.isArray를 사용하여 다시 확인해 보니 true가 반환되었습니다.

    그래서 MDN에서 이 기능에 대한 설명을 살펴봤습니다:

    https://developer.mozilla.org...

    반환값이 배열이라고 나오네요.

    ECMA 5.1을 살펴봤는데 위의 배열에 대한 설명을 찾을 수 없었습니다

    http://ecma-international.org...

    그래서 저도 여기서 마스터님의 답변을 기다리고 있습니다 =. =

    ----------------- 강제 설명을 위한 구분선 ------------------

    배열의 인스턴스도 객체이므로 실제로 속성을 추가하고 값을 할당할 수 있습니다.

    그러나 복합 유형이 아닌 변수의 경우 속성을 추가하고 해당 인스턴스에 값을 할당할 수 있는 방법이 없습니다. 해봐도 소용없으니까요.

    기억을 잘못해서 숫자 인스턴스에 속성 할당을 추가할 수 있는 방법이 없다고 생각했습니다. . . . .

    회신하다
    0
  • 怪我咯

    怪我咯2017-06-30 10:01:14

    으아악

    회신하다
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-30 10:01:14

    일반 exec 반환 값은 배열이지만 자세한 내용은 Rhinoceros 또는 Height에서 읽어보세요.

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-06-30 10:01:14

    으아악

    출력 a Get, JavaScript에서는 배열도 객체입니다

    ["tets", "fasfasf", index: "하하하"]

    회신하다
    0
  • 怪我咯

    怪我咯2017-06-30 10:01:14

    제가 이해한 바는 배열의 구성원과 배열 개체의 구성원입니다.
    ]

    회신하다
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-30 10:01:14

    으아악

    사실 여기서 가장 혼란스러운 점은 왜 ["Box"].index=10을 성공적으로 설정할 수 있느냐는 것입니다.
    먼저 인쇄 결과를 살펴보세요.

    더 명확하게 설명하기 위해 이를 확장하고 프로토타입 체인을 관찰합니다.
    객체 a의 프로토타입 체인:

    배열 b의 프로토타입 체인:

    위 그림에서 볼 수 있듯이 배열은 프로토타입 체인에서 객체 유형의 메서드를 상속합니다.
    ["box"]가 Array(0)에서 해당 메서드를 찾을 수 없으면 프로토타입 체인을 따라 내려가 Object에서 메서드를 찾습니다.
    그러므로 이론적으로는 배열 유형도 객체 유형의 유형으로 간주될 수 있습니다.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-06-30 10:01:14

    으아악

    회신하다
    0
  • 迷茫

    迷茫2017-06-30 10:01:14

    첫 번째 질문: 그냥 평범한 배열입니다

    두 번째 질문: 문법 오류

    으아악

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