NATIVE

settings_applicationsObject

NATIVE

Editing
  • account_tree
  • bug_report

ObjectSet

자료형에 관계없이 원시 값과 객체 참조 모두 유일한 값으로 저장할 수 있다.

설명

Set 객체는 자료 구조를 다루는 객체이다. 프로토타입 메소드를 보면 다른 자료 구조를 다루는 객체와 유사하다. 그렇다면 Set 객체만의 특징은 무엇일까? 단지 유사한 객체라면 엔진만 비대해질 것이다.

  • 중복된 값을 가질 수 없다.
  • 값은 삽입된 순서이다.
  • 인덱스를 갖지 않는다.

보통 Array 객체와 비교하는 데 전혀 다른 객체라는 것을 알 수 있을 것이다. 값을 조회할 때는 이터레이터 프로토콜(iterator protocol)을 사용한다.

하위 트리 탐색

  • Constructor

    Set() 생성자 함수를 사용하여 새로운 인스턴스를 생성한다.

    • Set()

      새로운 Set 객체의 인스턴스를 생성한다.

  • [[Prototype]]

    • Properties

      • @@species

        Set 객체의 생성자를 조회한다.

      • size

        설정된 요소의 갯수를 반환한다.

    • Methods

      • @@iterator

        이터러블 프로토콜(iterable protocol)을 준수하는 집합 반복자 객체를 반환한다.

      • add()

        동일한 값을 가진 경우가 없을 때 새로운 요소를 삽입한다.

      • clear()

        모든 요소를 제거한다.

      • delete()

        지정된 값이 존재하는 경우 제거한다.

      • entries()

        현재 Set 객체에 삽입된 순서에 따라 각 요소에 대한 [value, value] 형식의 배열을 항목으로 갖는 반복 가능한 객체를 반환한다. 원래는 [key, value] 형식이지만 Set 객체는 키가 없으므로 [value, value] 형식으로 반환한다.

      • forEach()

        요소의 삽입 순서에 따라 한번 순회하면서 지정된 함수를 실행한다.

      • has()

        지정된 값이 요소로 존재하는지 여부를 반환한다.

      • keys()

        value() 메소드의 별칭으로 값을 항목으로 갖는 반복 가능한 객체를 반환한다.

      • values()

        값을 항목으로 갖는 반복 가능한 객체를 반환한다.

버전 명세

ECMAScript 2024(15th Edition)
#sec-set-objects

지원 웹브라우저