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

# util.augment

Статическая функция.

Базовая функция, реализующая наследование в JavaScript. Реализует наследование прототипа без исполнения конструктора родителя. К дочернему классу добавляется поле 'superclass', указывающее на прототип родительского класса, и поле 'constructor', которое указывает на конструктор класса. Через поле 'constructor' объекта 'superclass' можно обратится к конструктору родительского класса.

**Возвращает** прототип дочернего класса.

```javascript
{ Object } util.augment(ChildClass, ParentClass, override)
```

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

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

Дочерний класс. ||
|| [`ParentClass`](#param-ParentClass)[*](*star) | — | Тип: Function

Родительский класс. ||
|| [`override`](#param-override)[*](*star) | — | Тип: Object

Набор дополнительных полей и функций, которые будут приписаны к прототипу дочернего класса. ||
|#

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

**Пример:**

```javascript
// Родительский класс.
var ParentClass = function (param1, param2) {
    this.param1 = param1;
    this.param2 = param2;
};

ParentClass.prototype = {
    foo: function () {
        alert('Parent!');
    }
};
// Дочерний класс.
var ChildClass = function (param1, param2, param3) {
    // Вызываем конструктор родителя.
    ChildClass.superclass.constructor.call(this, param1, param2);
    this._param3 = param3;
}

// Наследуем ChildClass from ParentClass.
ymaps.util.augment(ChildClass, ParentClass, {
    // Переопределяем у наследника метод "foo".
    foo: function () {
        // Вызываем метод родительского класса.
        ChildClass.superclass.foo.call(this);
        alert('Child!');    }});
```

<!-- XLIFF_FARM_YmM1MmFl_CACHING -->

[*star]: Обязательный параметр.