NATIVE

settings_applicationsObject  >   settings_applicationsArray

NATIVE

Draft
  • bug_report

Internal slot[[Prototype]]

생성자(constructor)를 가진 객체(object) 또는 인터페이스(interface)가 인스턴스(instance)를 생성할 때 상속할 수 있는 프로퍼티(property)와 메소드(method)를 가지고 있는 원형 객체를 참조하는 생성자의 은닉된 속성이다.

만약에 상속받은 객체(object) 또는 인터페이스(interface)가 존재한다면 상속한 객체(object) 또는 인터페이스(interface)의 [[Prototype]] 프로퍼티(property)와 메소드(method)를 추가적으로 사용할 수 있다.

설명

Array() 생성자 함수에 의해 생성되는 인스턴스 객체(또는 리터럴로 생성된 배열 데이터)에게 상속 가능한 원형 객체이다. Array 객체가 Object 객체를 상속 받았기에 Object 객체의 [[Prototype]]을 그대로 상속받는다. 또한 Object 객체의 [[Prototype]]과 마찬가지로 직접 속성과 메소드를 추가할 수도 있다.

Array() 생성자 함수는 자신의 생성자 함수가 Function() 이므로 Function 객체의 [[Prototype]]을 상속받지만 Array() 생성자 함수에 의해서 생성된 인스턴스 객체들은 자신의 [[Prototype]]과 Object 객체의 [[Prototype]]을 상속받는다.

하위 트리 탐색

  • Methods

    • concat()

      배열을 합친후 새로운 배열을 반환한다.
    • copyWithin()

      배열의 원소 일부를 동일한 배열의 다른 위치에 복사한 다음 크기를 수정하지 않고 반환한다.
    • entries()

      배열의 각 인덱스에 대한 key와 value 쌍을 가지는 새로운 배열 반복자(Iterator) 객체를 반환한다.
    • every()

      배열의 모든 원소가 제공한 함수로 구현된 테스트를 통과하는지를 확인한다. 각 원소에 대한 결과값이 모두 true일 경우에만 최종적으로 true를 반환한다.
    • fill()

      첫 번째 인수의 정적인 값을 두 번째 인수의 인덱스부터 세 번째 인수의 인덱스까지 원소들을 채워 반환한다.
    • filter()

      매개 변수로 지정된 콜백 함수 테스트를 통과하는 모든 원소가 있는 새로운 배열을 반환한다.
    • find()

      매개 변수로 지정된 콜백 함수에서 요구하는 원소를 찾기 위해 배열 안의 원소를 순서대로 탐색하면서 최초 찾은 배열의 원소를 반환한다.
    • findIndex()

      매개 변수로 지정된 콜백 함수에서 요구하는 원소를 찾기 위해 배열 안의 원소를 순서대로 탐색하면서 최초 찾은 배열의 원소에 대한 인덱스 반환한다. 존재하지 않으면 -1을 반환한다.
    • forEach()

      배열 원소에 대응하며 한번씩 지정된 콜백 함수를 실행한다.
    • includes()

      배열에 특정 원소가 포함되어 있는지 여부를 확인한다.
    • indexOf()

      매개 변수로 지정된 원소를 가지고 있으면 그 원소에 대한 첫번째 인덱스를 반환한다.
    • join()

      배열의 모든 원소를 연결해 하나의 문자열로 만들어 반환한다.
    • keys()

      배열의 각 인덱스를 키(Key) 값으로 가지는 새로운 Array Iterator 객체를 반환한다.
    • lastIndexOf()

      배열에서 매개 변수로 지정된 원소가 존재하는 마지막 인덱스를 반환하고 존재하지 않으면 -1을 반환한다.
    • map()

      배열 내의 모든 원소를 순회하며 매개 변수로 지정된 콜백 함수가 실행되어 그 결과를 새로운 배열로 반환한다.
    • pop()

      배열의 마지막 원소를제거하고 그 요소를 반환한다.
    • push()

      배열의 마지막에 하나 이상의 원소를 추가하고 변경된 배열의 길이를 반환한다.
    • reduce()

      배열의 원소 왼쪽에서 오른쪽으로 이동하며 각 원소마다 누적 계산값과 함께 함수를 적용해 하나의 값으로 줄인다.
    • reduceRight()

      배열의 원소 오른쪽에서 왼쪽으로 이동하며 각 원소마다 누적 계산값과 함께 함수를 적용해 하나의 값으로 줄인다.
    • reverse()

      배열을 원소 순서를 역순으로 변형한 뒤 그 배열의 참조를 반환한다.
    • shift()

      배열의 첫번째 원소를 제거하고 제거된 원소를 반환한다. 실제로 배열의 길이가 변경된다.
    • slice()

      배열의 특정 위치의 원소를 별도로 분리해 새로운 배열로 반환한다. 원본 배열은 수정되지 않는다.
    • some()

      배열 내 원소가 지정된 함수로 테스트 되도록 한다. 각 원소에 대한 결과 값이 한 건 이상이라도 true가 발생한 경우에만 true를 반환한다.
    • sort()

      배열의 원소를 정렬 지정 방식에 따라 새롭게 정렬하여 자신을 반환한다.
    • splice()

      배열의 특정 위치의 원소를 제거하거나 제거후 새 원소를 추가한다.
    • unshift()

      배열에 새로운 원소를 맨 앞쪽에 추가한다.
    • values()

      배열의 각 인덱스에 대한 value를 갖는 새로운 Array Iterator 객체를 반환한다.
  • Properties

    • length

      배열의 길이를 읽거나 설정할 수 있다.
  • Protocols

    • @@iterator

      인수없이 호출되며 반환된 반복자는 반복될 값을 얻는 데 사용한다.

상속 계층 탐색

Object

  • Methods

    • hasOwnProperty()

      객체가 특정 프로퍼티를 가지고 있는지를 블린 값으로 반환한다.
    • isPrototypeOf()

      해당 객체가 다른 객체의 프로토타입 체인에 속한 객체인지를 체크한다. 이 메소드는 instanceof 연산자와 함께 특정 프로토타입으로부터 상속된 객체만 작동하게 하려는(예를 들어 특정 메소드나 속성이 객체에 있다는걸 보장하려는 때) 코드에서 특히 쓸모가 많다.
    • propertyIsEnumerable()

      매개 변수의 속성이 열거가능한지 여부를 체크한다.
    • toLocaleString()

      객체를 나타내는 문자열을 사용 지역의 방식으로 출력이 된다. 이 메소드는 상속받은 모든 객체가 사용할 수 없고 아래와 같은 상속된 객체에 사용이 된다. Array.prototype.toLocaleString() Number.prototype.toLocaleString() Date.prototype.toLocaleString()
    • toString()

      객체를 나타내는 문자열을 반환한다.
    • valueOf()

      객체의 Primitive(원시) 값을 반환한다.
  • Properties

    • constructor

      객체의 생성자 함수를 참조한다.
    • __proto__

      상속된 [[Prototype]] 참조하거나 설정가능하며 일반적으로 실제 코드상에서는 잘 사용되지 않는다. ECMAScript에서 사용되지 않는 비표준이지만 최신 웹브라우저에서는 비공식적으로 지원하고 있다. 따라서 곧 표준 속성으로 지원될 확률이 높다.

Object

  • Methods

    • hasOwnProperty()

      객체가 특정 프로퍼티를 가지고 있는지를 블린 값으로 반환한다.
    • isPrototypeOf()

      해당 객체가 다른 객체의 프로토타입 체인에 속한 객체인지를 체크한다. 이 메소드는 instanceof 연산자와 함께 특정 프로토타입으로부터 상속된 객체만 작동하게 하려는(예를 들어 특정 메소드나 속성이 객체에 있다는걸 보장하려는 때) 코드에서 특히 쓸모가 많다.
    • propertyIsEnumerable()

      매개 변수의 속성이 열거가능한지 여부를 체크한다.
    • toLocaleString()

      객체를 나타내는 문자열을 사용 지역의 방식으로 출력이 된다. 이 메소드는 상속받은 모든 객체가 사용할 수 없고 아래와 같은 상속된 객체에 사용이 된다. Array.prototype.toLocaleString() Number.prototype.toLocaleString() Date.prototype.toLocaleString()
    • toString()

      객체를 나타내는 문자열을 반환한다.
    • valueOf()

      객체의 Primitive(원시) 값을 반환한다.
  • Properties

    • constructor

      객체의 생성자 함수를 참조한다.
    • __proto__

      상속된 [[Prototype]] 참조하거나 설정가능하며 일반적으로 실제 코드상에서는 잘 사용되지 않는다. ECMAScript에서 사용되지 않는 비표준이지만 최신 웹브라우저에서는 비공식적으로 지원하고 있다. 따라서 곧 표준 속성으로 지원될 확률이 높다.

지원 웹브라우저