UNPKG

686 BJavaScriptView Raw
1var isObject = require('./isObject');
2
3/** Built-in value references. */
4var objectCreate = Object.create;
5
6/**
7 * The base implementation of `_.create` without support for assigning
8 * properties to the created object.
9 *
10 * @private
11 * @param {Object} proto The object to inherit from.
12 * @returns {Object} Returns the new object.
13 */
14var baseCreate = (function() {
15 function object() {}
16 return function(proto) {
17 if (!isObject(proto)) {
18 return {};
19 }
20 if (objectCreate) {
21 return objectCreate(proto);
22 }
23 object.prototype = proto;
24 var result = new object;
25 object.prototype = undefined;
26 return result;
27 };
28}());
29
30module.exports = baseCreate;