Подключение двух наборов настроек - PullRequest
0 голосов
/ 09 декабря 2018

Здесь выполняется соединение oldSettings с newSettings .

Может ли быть улучшен последний из приведенных здесь, или это лучшийможно получить?

Из этого вышло: То, что мне сказали, было написано неправильно.

https://jsfiddle.net/g6oaht8f/23/

function combineSettings(oldSettings, newSettings) {
    const playerVars = Object.assign({}, oldSettings.playerVars, newSettings.playerVars);
    const settings = Object.assign({}, oldSettings, newSettings);
    settings.playerVars = playerVars;
    return settings;
}

Дляэто:

https://jsfiddle.net/g6oaht8f/27/

  function combineSettings(oldSettings, newSettings) {
    const oldPlayerVars = oldSettings.playerVars;
    const newPlayerVars = newSettings.playerVars;
    const settings = Object.assign({}, oldSettings, newSettings);
    const playerVars = Object.assign({}, oldPlayerVars, newPlayerVars);
    settings.playerVars = playerVars;
    return settings;
  }

На это: последнее исполнение

https://jsfiddle.net/g6oaht8f/28/

  function combineSettings(oldSettings, newSettings) {
        const oldPlayerVars = oldSettings.playerVars;
        const newPlayerVars = newSettings.playerVars;
        const settings = Object.assign({}, oldSettings, newSettings);
        settings.playerVars = Object.assign({}, oldPlayerVars, newPlayerVars);
        return settings;
    }

Можно ли еще улучшить этот последний?

oldSettings , будет означать « defaultSettings », то, что они все начинают

 playerVars: {
            autoplay: 1,
            controls: 1,
            showinfo: 1,
            rel: 0,
            iv_load_policy: 3,
            cc_load_policy: 0,
            fs: 0,
            disablekb: 1,
        },

newSettings будет тем, что указано в каждом загрузочном проигрывателе.

loadPlayer({
    target: ".jacketc",
    width: 600,
    height: 338,
    start: 200,
    end: 205,
    loop:true
});
...