node_modules.bower.lib.node_modules.mout.src.lang.createObject.js Maven / Gradle / Ivy
define(['../object/mixIn'], function(mixIn){
/**
* Create Object using prototypal inheritance and setting custom properties.
* - Mix between Douglas Crockford Prototypal Inheritance and the EcmaScript 5 `Object.create()` method.
* @param {object} parent Parent Object.
* @param {object} [props] Object properties.
* @return {object} Created object.
*/
function createObject(parent, props){
function F(){}
F.prototype = parent;
return mixIn(new F(), props);
}
return createObject;
});