PP.extend

Синтаксис

extend(setting: Object, extSettings: Object, replaceAll: Boolean, recursive: Boolean, arrayAsPrimitive: Boolean);

Параметры

setting. Расширяемый объект;

extSettings. Объект, членами которого необходимо расширить другой объект;

replaceAll. Признак замены одинаковых членов. Если параметр равен значению true, то совпадающие члены будут перезаписаны, иначе - не будут. Необязательный параметр, по умолчанию его значение не определено;

recursive. Признак рекурсивного обхода членов объекта. Если параметр равен значению true, то члены объекта будут перебраны рекурсивно, иначе - не будут. Необязательный параметр, по умолчанию его значение не определено;

arrayAsPrimitive. Признак того, что указанные массивы являются примитивным типом, и производится их полное замещение.  Если параметр равен значению true, то будет считаться, что массивы являются примитивным типом и будут полностью замещены. Необязательный параметр, по умолчанию его значение не определено.

Описание

Метод extend расширяет указанный объект членами другого объекта.

Комментарии

Метод возвращает массив.

Пример

Для выполнения примера необходимо наличие на html-странице ссылки на файл сценария PP.js. Определим два объекта и расширим первый из них членами второго объекта:

// Определим расширяемый объект
var chart = {
    chartType: "pie",
    editMode: 0,
};
// Определим объект, членами которого расширим первый объект
var chartView = {
    editMode: 2,
    selectionEnabled: true,
    options: "selected"
};
// Получим все имеющиеся значения членов объекта
var getProperties = function (obj) {
    var result = "";
    for (var i in obj) {
        result += obj[i];
        result += " "
    };
    return result;
}
console.log("Значения членов объекта «chart»: " + this.getProperties(chart));
console.log("Значения членов объекта «chartView»: " + this.getProperties(chartView));
// Расширим первый объект вторым
PP.extend(chart, chartView, true, true, false);
console.log("Значения членов объекта «chart», расширенного объектом «chartView»: " + this.getProperties(chart));

В результате выполнения примера в консоли браузера были выведены значения членов объекта «chart», расширенного членами объекта «chartView»:

Свойства объекта «chart»: pie 0
Свойства объекта «chartView»: 2 true selected
Свойства объекта «chart», расширенного объектом «chartView»: pie 2 true selected

См. также:

PP