---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/llms.txt

# LayerCollection

Расширяет [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md), [IMapObjectCollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IMapObjectCollection.md).

Коллекция слоев.

## Конструктор {#constructor}

```javascript
LayerCollection()
```

Коллекция слоев.

## Поля {#fields}

#|
|| **Имя** | **Тип** | **Описание** ||
|| [events](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md) | Менеджер событий.

Унаследовано от [IEventEmitter](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventEmitter.md#events). ||
|| [options](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICustomizable.md#options) | [IOptionManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IOptionManager.md) | Менеджер опций.

Унаследовано от [ICustomizable](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICustomizable.md#options). ||
|#

## События {#events}

#|
|| **Имя** | **Описание** ||
|| [add](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICollection.md#add) | Произошло добавление дочернего объекта.

Унаследовано от [ICollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICollection.md#add). ||
|| [brightnesschange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md#brightnesschange) | Событие изменения яркости слоя.

Унаследовано от [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md#brightnesschange). ||
|| [copyrightschange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md#copyrightschange) | Событие изменения доступной информации об авторских правах.

Унаследовано от [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md#copyrightschange). ||
|| [mapchange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IParentOnMap.md#mapchange) | Сменилась карта. Поля данных:

• oldMap - старая карта;

• newMap - новая карта.

Унаследовано от [IParentOnMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IParentOnMap.md#mapchange). ||
|| [optionschange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICustomizable.md#optionschange) | Изменение в опциях объекта.

Унаследовано от [ICustomizable](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICustomizable.md#optionschange). ||
|| [parentchange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChild.md#parentchange) | Сменился родительский объект.

Поля данных:

• oldParent - старый родитель;

• newParent - новый родитель.

Унаследовано от [IChild](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChild.md#parentchange). ||
|| [remove](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICollection.md#remove) | Произошло удаление дочернего объекта.

Унаследовано от [ICollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICollection.md#remove). ||
|| [zoomrangechange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md#zoomrangechange) | Событие изменения доступной информации о диапазоне уровней масштабирования.

Унаследовано от [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md#zoomrangechange). ||
|#

## Методы {#method}

#|
|| **Имя** | **Возвращает** | **Описание** ||
|| [add](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#add)([child](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#add-param-child)) | [LayerCollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md) | Добавляет в коллекцию дочерний объект. ||
|| [each](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#each)([callback](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#each-param-callback)[, [context](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#each-param-context)]) |  | Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик. ||
|| [getBrightness](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#getBrightness)() | Number | Returns яркость слоя в виде числа от 0 до 1. ||
|| [getCopyrights](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#getCopyrights)([[coords](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#getCopyrights-param-coords)[, [zoom](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#getCopyrights-param-zoom)]]) | [util.Promise](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/util.Promise.md) | Запрашивает информацию об авторских правах в указанной точке с указанным коэффициентом масштабирования. Возвращает объект-promise, который будет подтверждён и передаст в качестве результата массив строк или DOM-элементов с информацией об авторских правах. Если точка и коэффициент масштабирования не указаны, будут использованы центр и коэффициент масштабирования карты. ||
|| [getIterator](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICollection.md#getIterator)() | [IIterator](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IIterator.md) | Returns итератор по коллекции.

Унаследован от [ICollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ICollection.md#getIterator). ||
|| [getMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IParentOnMap.md#getMap)() | [Map](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/Map.md) | Returns ссылку на карту.

Унаследован от [IParentOnMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IParentOnMap.md#getMap). ||
|| [getParent](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChildOnMap.md#getParent)() | [IParentOnMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IParentOnMap.md) | Returns ссылку на родительский объект.

Унаследован от [IChildOnMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChildOnMap.md#getParent). ||
|| [getZoomRange](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#getZoomRange)() | [util.Promise](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/util.Promise.md) | Определяет доступный в указанной точке диапазон уровней масштабирования. Если данные есть, то возвращенный объект-promise будет подтвержден и передаст в качестве результата массив из двух чисел - минимальный и максимальный доступный в точке уровень масштабирования. Если данных нет, то promise отклоняется с указанием ошибки. Если у коллекции нет ни одного потомка, предоставляющего информацию о диапазоне уровней масштабирования, то promise будет отклонён с сообщением 'noProvider'. ||
|| [remove](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#remove)([child](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md#remove-param-child)) | [LayerCollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/LayerCollection.md) | Удаляет из коллекции дочерний объект. ||
|| [setParent](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChildOnMap.md#setParent)([parent](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChildOnMap.md#setParent-param-parent)) | [IChildOnMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChildOnMap.md) | Устанавливает родительский объект.

Унаследован от [IChildOnMap](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IChildOnMap.md#setParent). ||
|#

## Описание методов {#description-methods}

### add

```javascript
{LayerCollection} add(child)
```

Добавляет в коллекцию дочерний объект.

**Returns** ссылку на себя.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `child`[*](*parametr) | — | Тип: [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md)\|String

Слой (ключ хранилища [layer.storage](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/layer.storage.md) или экземпляр класса [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md)), который нужно добавить. ||
|#


\* Обязательный параметр/опция.

**Пример:**

```javascript
// Допустим, мы хотим добавить в свою коллекцию несколько слоёв.
var layerCollection = new ymaps.LayerCollection(),
    customLayer = new ymaps.Layer(
         'http://tile.openstreetmap.org/%z/%x/%y.png', {
         projection: ymaps.projection.sphericalMercator
    }),
    // Слой можно задать ключём из layer.storage.
    satelliteLayer = 'yandex#satellite';
// Добавим слои в нашу коллекцию.
layerCollection
    .add(customLayer)
    .add(satelliteLayer);
```

### each

```javascript
{} each(callback[, context])
```

Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `callback`[*](*parametr) | — | Тип: Function

Функция-обработчик. ||
|| `context` | — | Тип: Object

Контекст выполнения функции. ||
|#


\* Обязательный параметр/опция.

### getBrightness

```javascript
{Number} getBrightness()
```

**Returns** яркость слоя в виде числа от 0 до 1.

### getCopyrights

```javascript
{util.Promise} getCopyrights([coords[, zoom]])
```

Запрашивает информацию об авторских правах в указанной точке с указанным коэффициентом масштабирования. Возвращает объект-promise, который будет подтверждён и передаст в качестве результата массив строк или DOM-элементов с информацией об авторских правах. Если точка и коэффициент масштабирования не указаны, будут использованы центр и коэффициент масштабирования карты.

**Returns** объект-promise.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `coords` | — | Тип: Number[]

Точка на карте, для которой запрашивается информация об авторских правах. ||
|| `zoom` | — | Тип: Number

Уровень масштабирования, для которого запрашивается информация об авторских правах. ||
|#

**Пример:**

```javascript
// Пусть у нас есть сервис, умеющий по координатам
// и уровню масштабирования возвращать копирайты
myLayer.getCopyrights = function (coords, zoom) {
    var promise = new ymaps.util.Promise();
    $.ajax('url/to/copyrights/provider?ll=' +
        (coords || map.getCenter()).join(',') + '&z=' +
        (zoom || map.getZoom()),
        function (res) {
        promise.resolve(res || []);
    });
    return promise;
};
```

### getZoomRange

```javascript
{util.Promise} getZoomRange()
```

Определяет доступный в указанной точке диапазон уровней масштабирования. Если данные есть, то возвращенный объект-promise будет подтвержден и передаст в качестве результата массив из двух чисел - минимальный и максимальный доступный в точке уровень масштабирования. Если данных нет, то promise отклоняется с указанием ошибки. Если у коллекции нет ни одного потомка, предоставляющего информацию о диапазоне уровней масштабирования, то promise будет отклонён с сообщением 'noProvider'.

**Returns** объект-promise.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `coords`[*](*parametr) | — | Тип: ||
|#


\* Обязательный параметр/опция.

**Пример:**

```javascript
// Допустим, наш слой отрисован для масштабов 2-15 по всей земле
myLayer.getZoomRange = function () {
    var promise = new ymaps.util.Promise();
    promise.resolve([2, 15]);
    return promise;
}
```

### remove

```javascript
{LayerCollection} remove(child)
```

Удаляет из коллекции дочерний объект.

**Returns** ссылку на себя.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `child`[*](*parametr) | — | Тип: [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md)\|String

Слой (строка-ключ из [layer.storage](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/layer.storage.md) или экземпляр класса [ILayer](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/ILayer.md)), который нужно удалить. ||
|#


\* Обязательный параметр/опция.

[*parametr]:Обязательный параметр/опция.
