我知道这样设置的代码有效,
我只是不知道它是否是一种好用的,不会有问题,这意味着它不会有问题。
是的,它正在做我们想要做的事情。
它将 oldSettings 与 newSettings 结合在一起。
我不知道它的书写方式是否比这里的书写方式更好。
可能可以进行改进。
代码:
https://jsfiddle.net/Lnj7quby/8/
function combineSettings(oldSettings, newSettings) {
const playerVars = Object.assign({}, oldSettings.playerVars, newSettings.playerVars);
const settings = Object.assign({}, oldSettings, newSettings);
settings.playerVars = playerVars;
return settings;
}
oldSettings
哪些是:defaultSettings
const defaultSettings = {
playerVars: {
autoplay: 1,
controls: 1,
showinfo: 1,
rel: 0,
iv_load_policy: 3,
cc_load_policy: 0,
fs: 0,
disablekb: 1
},
new设置
是添加到其中的任何设置。
loadPlayer({
target: ".jacketc",
width: 600,
height: 338,
start: 200,
end: 205,
loop: true
});
loadPlayer({
target: ".playa",
start: 8,
end: 12,
loop: true
});
最佳答案
const defaultSettings = {
playerVars: {
autoplay: 1,
controls: 1,
showinfo: 1,
rel: 0,
iv_load_policy: 3,
cc_load_policy: 0,
fs: 0,
disablekb: 1
}
}
const newSettings = {
target: ".jacketc",
width: 600,
height: 338,
start: 200,
end: 205,
loop: true
}
const mergedSettings = {
...defaultSettings,
playerVars: {
...defaultSettings.playerVars,
...newSettings
}
};
console.log(mergedSettings);
关于javascript - 结合旧的和新的设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53684857/