You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
781 B
JavaScript
31 lines
781 B
JavaScript
(function(window) {
|
|
window.CONFIG = {}
|
|
})(window);
|
|
|
|
/**
|
|
* 对象属性合并,与 Object.assign 语法不同
|
|
* @param target
|
|
* @param source
|
|
* @returns {{}}
|
|
*/
|
|
function configDeepMerge(target, source) {
|
|
var merged = {};
|
|
for (var each in source) {
|
|
if (target.hasOwnProperty(each) && source.hasOwnProperty(each)) {
|
|
if (typeof target[each] == "object" && typeof source[each] == "object") {
|
|
merged[each] = configDeepMerge(target[each], source[each]);
|
|
} else {
|
|
merged[each] = source[each];
|
|
}
|
|
} else if (source.hasOwnProperty(each)) {
|
|
merged[each] = source[each];
|
|
}
|
|
}
|
|
for (var each in target) {
|
|
if (!(each in source) && target.hasOwnProperty(each)) {
|
|
merged[each] = target[each];
|
|
}
|
|
}
|
|
return merged;
|
|
}
|