合并两个JavaScript对象
用另一个的键/值对扩展JavaScript对象
使用以下帮辅助函数,您可以将两个对象合并为一个新对象:
function extend(obj, src) {
for (var key in src) {
if (src.hasOwnProperty(key)) obj[key] = src[key];
}
return obj;
}
// example
var a = { foo: true }, b = { bar: false };
var c = extend(a, b);
console.log(c);
// { foo: true, bar: false }
当将选项字典与功能或插件中的默认设置合并时,这通常很有用。
如果不需要支持IE 8,则可以使用Object.keys来实现相同的功能:
function extend(obj, src) {
Object.keys(src).forEach(function(key) { obj[key] = src[key]; });
return obj;
}
这代码更少,并且速度更快。