---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICollection.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/dev/jsapi-v2-1/doc/en/llms.txt

# ICollection

Extends [IEventEmitter](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventEmitter.md).

Interface for a collection.

[Constructor](#constructor-summary) | [Fields](#properties-summary) | [Events](#events-summary) | [Methods](#methods-summary)

## Constructor {#constructor-summary}

```javascript
ICollection()
```

## Fields {#properties-summary}

#|
|| **Name** | **Type** | **Description** ||
|| [events](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md) | Event manager.

Inherited from [IEventEmitter](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventEmitter.md#events). ||
|#

## Events {#events-summary}

#|
|| **Name** | **Description** ||
|| [add](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#event-add) | A child object was added. ||
|| [remove](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#event-remove) | A child object was deleted. ||
|#

## Methods {#methods-summary}

#|
|| **Name** | **Returns** | **Description** ||
|| [add](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#add)([object](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#add-param-object)) | [ICollection](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md) | Adds a child object to the collection. ||
|| [getIterator](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#getIterator)() | [IIterator](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IIterator.md) | Returns iterator for the collection. ||
|| [remove](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#remove)([object](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md#remove-param-object)) | [ICollection](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICollection.md) | Removes a child object from the collection. ||
|#

## Events details {#event_detail}

### add {#add}

A child object was added.

### remove {#remove}

A child object was deleted.

## Methods details {#method_detail}

### add {#add}

```javascript
{ICollection} add(object)
```

Adds a child object to the collection.

**Returns** self-reference.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`object`](#add-param-object)[*](*star) | — | Type: Object

Object being added. ||
|#

\* Mandatory parameter/option.

### getIterator {#getIterator}

```javascript
{IIterator} getIterator()
```

**Returns** iterator for the collection.

### remove {#remove}

```javascript
{ICollection} remove(object)
```

Removes a child object from the collection.

**Returns** self-reference.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`object`](#remove-param-object)[*](*star) | — | Type: Object

Object being removed. ||
|#

\* Mandatory parameter/option.

[*star]: Mandatory parameter/option.