---
metadata:
  - name: generator
    content: Diplodoc Platform v5.37.1
alternate:
  - https://yandex.ru/dev/jsapi-v1-1/doc/ru/ref/reference/utils.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/jsapi-v1-1/doc/ru/llms.txt

# YMaps.Utils

Пространство имен служебных функций.

## Методы

Имя | Статический | Возвращает | Описание
----- | ----- | ----- | -----
[boundaryRestrict](utils.md#.boundaryRestrict)(value, min, max) | ![](../_images/check.png) | Number | Ограничивает числовое значение на входе заданными минимальным и максимальным пределами.
[callMethod](utils.md#.callMethod)(objects, methodName) | ![](../_images/check.png) |  | Вызывает заданный метод для каждого объекта из множества объектов.
[cycleRestrict](utils.md#.cycleRestrict)(value, min, max) | ![](../_images/check.png) | Number | Приводит числовое значение к заданному диапазону.
[extend](utils.md#.extend)(child, parent) | ![](../_images/check.png) | Object | Реализует наследование прототипа без исполнения конструктора родителя.
[normalizeContent](utils.md#.normalizeContent)(content) | ![](../_images/check.png) | ILayout | Возвращает макет на основе переданных данных.

## Подробное описание методов {#method_detail}

### boundaryRestrict {#boundaryRestrict}

```javascript
{Number} boundaryRestrict(value, min, max)
```

Ограничивает числовое значение на входе заданными минимальным и максимальным пределами.

**Пример:**

```javascript
// Возвращает -180
YMaps.Utils.boundaryRestrict(-250, -180, 180)
```

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

Имя | Тип | Описание
----- | ----- | -----
`value` | Number | Ограничиваемое значение.
`min` | Number | Минимальный предел.
`max` | Number | Максимальный предел.


**Возвращает:**

Тип | Описание
----- | -----
Number | Ограниченное значение.

### callMethod {#callMethod}

```javascript
callMethod(objects, methodName)
```

Вызывает заданный метод для каждого объекта из множества объектов. Аргументы, начиная с третьего, передаются на вход вызываемому методу.

**Пример:**

```javascript
var points = [new YMaps.Point(10, 20), new YMaps.Point(20, 30)];
YMaps.Utils.callMethod(points, "moveBy", new YMaps.Point(10, 10));
```

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

Имя | Тип | Описание
----- | ----- | -----
`objects` | Object[] | Массив объектов, для которых будет вызываться метод.
`methodName` | String | Имя метода, вызываемого у каждого из объектов.

### cycleRestrict {#cycleRestrict}

```javascript
{Number} cycleRestrict(value, min, max)
```

Приводит числовое значение к заданному диапазону.

Считается, что диапазон значений замкнут в кольцо. Если значение выходит за одну из границ диапазона, то излишек отсчитывается по кругу со стороны другой границы.

Как правило, данный метод используется для работы с неограниченными геоточками.

**См.:** [Преобразование координат](https://yandex.ru/dev/jsapi-v1-1/doc/ru/dg/concepts/coordinates_conversion.md)

**Пример:**

```javascript
// Возвращает 110
YMaps.Utils.cycleRestrict(-250, -180, 180);
// Возвращает 60
YMaps.Utils.cycleRestrict(-300, -180, 180);
// Возвращает -170
YMaps.Utils.cycleRestrict(190, -180, 180);
```

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

Имя | Тип | Описание
----- | ----- | -----
`value` | Number | Ограничиваемое значение.
`min` | Number | Минимальный предел.
`max` | Number | Максимальный предел.


**Возвращает:**

Тип | Описание
----- | -----
Number | Ограниченное значение.

### extend {#extend}

```javascript
{Object} extend(child, parent)
```

Реализует наследование прототипа без исполнения конструктора родителя.

**Пример:**

```javascript
// Родительский класс
function ParentClass(){}
ParentClass.prototype.parentMethod = function() {
    alert('Parent');
};
// Дочерний класс
function ChildClass(){
    ParentClass.call(this);
}
YMaps.Utils.extend(ChildClass, ParentClass);
var childObject = new ChildClass();
childObject.parentMethod(); // Parent
```

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

Имя | Тип | Описание
----- | ----- | -----
`child` | Function | Класс-потомок.
`parent` | Function | Родительский класс.


**Возвращает:**

Тип | Описание
----- | -----
Object | Указатель на прототип класса-потомка.

### normalizeContent {#normalizeContent}

```javascript
{ILayout} normalizeContent(content)
```

Возвращает макет на основе переданных данных.

Если передана пустая строка, null или undefined, то метод возвращает null.

**Пример:**

```javascript
map.openBalloon(map.getCenter(), YMaps.Utils.normalizeContent('<p>Центр карты</p>'));
```

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

Имя | Тип | Описание
----- | ----- | -----
`content` | String|HTMLElement|ILayout | Нормализуемое содержимое.


**Возвращает:**

Тип | Описание
----- | -----
ILayout | Макет.

