Mix any number of objects and mix them all into a new object:
function mix() { var arg, prop, child = {}; for (arg = 0; arg < arguments.length; arg += 1) { for (prop in arguments[arg]) { if (arguments[arg].hasOwnProperty(prop)) { child[prop] = arguments[arg][prop]; } } } return child; } var cake = mix( { eggs: 2, large: true }, { butter: 1, salted: true }, { flour: "3 cups" }, { sugar: "sure!" } ); console.dir(cake);
Return:
Object:
butter: 1
eggs: 2
flour: "3 cups"
large: true
salted: true
sugar: "sure!"