Изменить значение объекта внутри собственной функции - PullRequest
0 голосов
/ 15 мая 2018

Я хочу построить базовую библиотеку JS.У меня есть функция, вызывающая себя, которая содержит объект.

var test = (function (window) {

var defaults = {
    container: 'app',
    size: 500
};

function init() {
    var div = document.getElementById(defaults.container);
    var playerTemplate = 
    `<div class="container">
        <h1>hi</h1>
    </div>`;
    div.innerHTML = playerTemplate;
};

return {
    init: init
};

})(window);

Когда я запускаю эту функцию, я хочу передать объект и изменить объект по умолчанию в нем.Как я могу это сделать?

как это:

test.init({size: 300});

1 Ответ

0 голосов
/ 15 мая 2018

Вы можете использовать метод Object.assign для перезаписи значений по умолчанию

var test = (function (window) {

var defaults = {
    container: 'app',
    size: 500
};

function init(options) {
    const opts = Object.assign({}, defaults, options);

    var div = document.getElementById(opts.container);
    var playerTemplate =
        `<div class="container">
        <h1>hi</h1>
    </div>`;
    div.innerHTML = playerTemplate;
};

 return {
    init: init
 };

})(window);

test.init({ size: 300 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...